android:gravity ব্যবহার করে টেক্সট আ্যালাইনমেন্ট
এই বেসিক টিউটোরিয়ালে দেখানো হয়েছে কিভাবে TextView-এ android:gravity এট্রিবিউট ব্যবহার করে টেক্সটকে হরিজন্টালি, ভার্টিক্যালি, বা উভয় দিকেই সেন্টার করা যায়।
ধাপ ১: প্রজেক্ট তৈরি
ধাপ ২: লেআউট (দুটি TextView উদাহরণ)
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="https://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_margin="16dp">
<TextView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center_vertical"
android:text="Text in Center Vertical" />
<TextView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center_horizontal"
android:text="Text in Center Horizontal" />
</RelativeLayout>
ধাপ ৩: MainActivity.java (কোনো লজিক নেই)
package app.com.sample;
import android.os.Bundle;
import androidx.appcompat.app.AppCompatActivity;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
}
gravity ভ্যালু ওপশন
| ভ্যালু | প্রভাব |
|---|---|
| top | উপরে আ্যালাইন |
| bottom | নিচে আ্যালাইন |
| left / start | বামে আ্যালাইন |
| right / end | ডানে আ্যালাইন |
| center_vertical | ভার্টিক্যালি সেন্টার |
| center_horizontal | হরিজন্টালি সেন্টার |
| center | উভয় দিকেই সেন্টার (center_vertical | center_horizontal) |
| fill_vertical | ভার্টিক্যালি ফিল (উচ্চতা বাড়িয়ে) |
| fill_horizontal | হরিজন্টালি ফিল |
| fill | উভয় দিকেই ফিল |
| clip_vertical / clip_horizontal | ক্লিপিং আসলিয়াস |
গুরুত্বপূর্ণ পার্থক্য: gravity vs layout_gravity
- android:gravity - ভিউর ভিতরের কন্টেন্ট (টেক্সট, চাইল্ড ভিউ) কীভাবে আ্যালাইন হবে
- android:layout_gravity - ভিউটি প্যারেন্টের ভিতরে কীভাবে পজিশন হবে
প্রোগ্রামেটিক্যালি সেট করুন
textView.setGravity(Gravity.CENTER); // বা Gravity.CENTER_VERTICAL | Gravity.CENTER_HORIZONTAL
ConstraintLayout-এ (আধুনিক)
<TextView
android:layout_width="0dp"
android:layout_height="0dp"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintEnd_toEndOf="parent"
android:gravity="center" />