android - আমি কিভাবে টেক্সটভিউতে অনুভূমিক এবং উল্লম্বভাবে পাঠ্য পাঠাতে পারি?




textview (20)

TextView এর উচ্চতা এবং প্রস্থটি সামগ্রী মোড়ানো হয় তবে পাঠ্যক্ষেত্রের মধ্যে থাকা পাঠটি সর্বদা কেন্দ্রিক হবে, তারপরে এটি ব্যবহার করে তার পিতামাতার লেআউটে কেন্দ্রটি তৈরি করুন:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerInParent="true"
        android:text="Hello.."/>
</RelativeLayout>

LinearLayout জন্য কোড একই:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:gravity="center">

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Hello.."/>
</LinearLayout>

এবং সমর্থিত ব্যাকরণগতভাবে অভিভাবক RelativeLayout জাভা কোড রান সময় এই আপনার কার্যকলাপের মধ্যে কিছু ভালো ব্যবহার করুন

TextView textView1 =(TextView)findViewById(R.id.texView1);
RelativeLayout.LayoutParams layoutParams = RelativeLayout.LayoutParams)textView1.getLayoutParams();
layoutParams.addRule(RelativeLayout.CENTER_IN_PARENT, RelativeLayout.TRUE);
textView1.setLayoutParams(layoutParams);

আমি কিভাবে টেক্সটভিউতে অনুভূমিকভাবে এবং উল্লম্বভাবে পাঠ্যকে কেন্দ্র করবো, যাতে এটি Android এ পাঠ্য TextView মাঝখানে ঠিক থাকে?


অনেক উত্তর উপরে জরিমানা কাজ হিসাবে সুপারিশ।

android:gravity="center"

আপনি যদি এটি উল্লম্বভাবে কেন্দ্র করতে চান:

android:gravity="center_vertical"

অথবা শুধু অনুভূমিকভাবে:

android:gravity="center_horizontal"

আপনি এটি গতিশীলভাবে ব্যবহার করে সেট আপ করতে পারেন:

textView.setGravity(Gravity.CENTER_VERTICAL | Gravity.CENTER_HORIZONTAL);

আপনি কেবল আপনার পাঠ্যভ্রংশের CENTERgravity সেট করতে পারেন।


আপনি যদি TableLayout ব্যবহার করে থাকেন তবে টেবিলের সারির মাধ্যাকর্ষণ সেট করতেও ভুলবেন না। অন্যথা এটা কাজ করবে না। অন্তত এটি আমার সাথে কাজ করে না যতক্ষণ না আমি টেবিলের সারির মাধ্যাকর্ষণ সেট করতে পারি।

উদাহরণস্বরূপ, এই মত:

<TableRow android:id="@+id/tableRow2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:gravity="center">        
    <TextView android:text="@string/chf" android:id="@+id/tv_chf" android:layout_weight="2" android:layout_height="wrap_content" android:layout_width="fill_parent" android:gravity="center"></TextView>        
</TableRow>

আপনি যদি টেবিলআউটে একটি টেবিলরোতে পাঠ্যকে কেন্দ্র করার চেষ্টা করছেন, তবে এখানে আমি কীভাবে এটি অর্জন করেছি:

<TableRow android:id="@+id/rowName"
          android:layout_width="wrap_content"
          android:layout_height="wrap_content"
          android:padding="5dip" >
    <TextView android:id="@+id/lblSomeLabel"
              android:layout_width="fill_parent"
              android:layout_height="fill_parent"
              android:gravity="center"
              android:layout_width="0dp"
              android:layout_weight="100"
              android:text="Your Text Here" />
</TableRow>

আপেক্ষিক বিন্যাস জন্য এই ব্যবহার করুন

android:layout_centerInParent="true"

এবং অন্যান্য বিন্যাস জন্য

android:gravity="center" 

আমরা এই একাধিক উপায়ে এই অর্জন করতে পারেন: -

এক্সএমএল পদ্ধতি 01

<TextView  
    android:id="@+id/textView"
    android:layout_height="match_parent"
    android:layout_width="wrap_content" 
    android:gravity="center_vertical|center_horizontal"
    android:text="@strings/text"
/>

এক্সএমএল পদ্ধতি 02

<TextView  
    android:id="@+id/textView"
    android:layout_height="match_parent"
    android:layout_width="wrap_content" 
    android:layout_centerHorizontal="true"
    android:layout_centerVertical="true"
    android:text="@strings/text"
/>

এক্সএমএল পদ্ধতি 03

<TextView  
    android:id="@+id/textView"
    android:layout_height="match_parent"
    android:layout_width="wrap_content" 
    android:gravity="center"
    android:text="@strings/text"
/>

এক্সএমএল পদ্ধতি 04

<TextView  
    android:id="@+id/textView"
    android:layout_height="match_parent"
    android:layout_width="wrap_content" 
    android:layout_centerInParent="true"
    android:text="@strings/text"
/>

জাভা পদ্ধতি 01

textView.setGravity(Gravity.CENTER_VERTICAL | Gravity.CENTER_HORIZONTAL);

জাভা পদ্ধতি 02

textview.setGravity(Gravity.CENTER);

জাভা পদ্ধতি 03

textView.setTextAlignment(View.TEXT_ALIGNMENT_CENTER);

আমি অনুমান করছি আপনি এক্সএমএল লেআউট ব্যবহার করছেন।

<TextView  
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:gravity="center"
    android:text="@string/**yourtextstring**"
/>

আপনি আপনার প্রয়োজন অনুযায়ী মাধ্যাকর্ষণ center_vertical বা center_horizontal ব্যবহার করতে পারেন।

এবং @stealthcopter জাভাতে মন্তব্য করেছেন: .setGravity(Gravity.CENTER);


আমি মনে করি না, আপনাকে অবশ্যই এমনটি করতে হবে যা আপনার লেআউট ফাইলের মধ্যে আপনার পাঠ্য ভিউ সংজ্ঞায়িত করে

<RelativeLayout
    android:layout_width="width"
    android:layout_height="height">
    <TextView
        android:id="@+id/yourid"
        android:layout_centerInParent="true"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Your text" />
</RelativeLayout>

এই ভাবে চেষ্টা করুন, এটা কাজ করবে

<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="vertical"
    android:gravity="center_horizontal|center_vertical">

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textAlignment="center" />

</LinearLayout>

এক্সএমএল ফাইল ব্যবহার করুন।

লেআউট ফাইল

<TextView
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:gravity="center"
    android:text="@string/stringtext"/>

বা:

জাভা ক্লাসের ভিতরে এটি ব্যবহার করুন

TextView textView =(TextView)findViewById(R.id.texviewid);
textView.setGravity(Gravity.CENTER_VERTICAL | Gravity.CENTER_HORIZONTAL);

গ্র্যাভিটি ব্যবহার করার সময় টেক্সট ভিউয়ের জন্য কাজ করে, এপিআই স্তরের 17 এ প্রয়োগ করা একটি বিকল্প পদ্ধতি রয়েছে -

textView.setTextAlignment(View.TEXT_ALIGNMENT_CENTER);

পার্থক্য জানি না, কিন্তু এটি খুব কাজ করে। তবে শুধুমাত্র API লেভেল 17 বা উচ্চতর জন্য।


নিচের কোডটি এক্সএমএলে ব্যবহার করুন এটি আমার জন্য কাজ করেছে আপনি এটির কেন্দ্রস্থলটি পরিবর্তন করতে পারেন

<LinearLayout
        android:layout_width="match_parent"
        android:orientation="horizontal"
        android:background="@color/colorPrimaryDark"
        android:gravity="center"
        android:layout_height="wrap_content">
        <TextView
            android:id="@+id/id_text"
            android:layout_width="wrap_content"
            android:textSize="18sp"
            android:textColor="@android:color/white"
            android:textStyle="normal"
            android:layout_height="wrap_content"
            android:text="centre me"/>
    </LinearLayout>

যদি TextView's উচ্চতা এবং প্রস্থটি wrap content তবে পাঠ্য TextView মধ্যে পাঠ্য সর্বদা কেন্দ্রিক হবে। কিন্তু যদি match_parent TextView's প্রস্থটি match_parent এবং উচ্চতাটি match_parent বা match_parent তাহলে আপনাকে নীচের কোডটি লিখতে হবে:

RelativeLayout জন্য:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <TextView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:gravity="center" 
        android:text="Hello World" />

</RelativeLayout>

LinearLayout জন্য:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <TextView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:gravity="center"
        android:text="Hello World" />

</LinearLayout>

যদি আপনি আপেক্ষিক লেআউট ব্যবহার করছেন:

  <TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="@string/stringname"
    android:layout_centerInParent="true"/>

আপনি যদি LinearLayout ব্যবহার করা হয়

<TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="@string/stringname"
    android:layout_gravity="center"/>

শুধু, আপনার এক্সএমএল ফাইলের মধ্যে, পাঠ্যক্রমের মাধ্যাকর্ষণকে কেন্দ্র করে সেট করুন:

<TextView
    android:gravity="center" />

সবচেয়ে সহজ উপায় (যা আশ্চর্যজনকভাবে শুধুমাত্র মন্তব্যগুলিতে উল্লেখ করা হয়েছে, তাই আমি কেন উত্তর হিসাবে পোস্ট করছি):

textview.setGravity(Gravity.CENTER)

android:gravity="center_horizontal" অনুভূমিকভাবে টেক্সট কেন্দ্র সারিবদ্ধ। android:gravity="center_vertical" উল্লম্বভাবে টেক্সট সেন্টার সারিবদ্ধ। android:gravity="center" উভয় উল্লম্ব এবং অনুভূমিক উভয় টেক্সট কেন্দ্র সারিবদ্ধ।

<TextView
        android:layout_width="match_parent"
        android:gravity="center_horizontal|center_vertical"
        android:layout_height="match_parent" />

android:gravity="center" 

এই কৌতুক করতে হবে





textview