Saya menggunakan tata letak linier untuk menampilkan layar awal yang cukup ringan. Ini memiliki 1 tombol yang seharusnya berpusat di layar baik secara horizontal dan vertikal. Namun apa pun yang saya coba lakukan tombol akan menyelaraskan pusat tengah. Saya telah memasukkan XML di bawah ini, dapatkah seseorang mengarahkan saya ke arah yang benar?
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<ImageButton android:id="@+id/btnFindMe"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical|center_horizontal"
android:background="@drawable/findme"></ImageButton>
</LinearLayout>
layout_width
ke "wrap_content". Selanjutnyalayout_gravity
melakukan apa yang seharusnya dilakukan!Jawaban:
Jika Anda ingin memusatkan item di tengah layar jangan gunakan
LinearLayout
karena ini dimaksudkan untuk menampilkan sejumlah item dalam satu baris.Gunakan
RelativeLayout
saja.Jadi ganti:
untuk
RelativeLayout
opsi yang relevan :Jadi file layout Anda akan terlihat seperti ini:
sumber
Pusat menggunakan LinearLayout:
sumber
Sudahkah Anda mencoba mendefinisikan
android:gravity="center_vertical|center_horizontal"
di dalam tata letak dan pengaturanandroid:layout_weight="1"
pada gambar?sumber
android:weight="1"
tombol untuk memusatkannya.)Metode yang umum digunakan yang bekerja dengan tata letak linier adalah mengatur properti pada tombol gambar
Anda dapat memilih apakah akan menyelaraskan kiri, meluruskan tengah, atau meluruskan kanan setiap objek dalam tata letak linier. Perhatikan bahwa baris di atas persis sama dengan
sumber
Tambahkan ini
Di LinearLayout.
sumber
android:gravity="center"
Jika Anda menggunakan,
LinearLayout
Anda dapat menambahkan pusat gravitasi:sumber
mudah dengan ini
sumber
Anda dapat menggunakan
RelativeLayout
.sumber
Kode di atas akan berfungsi.
sumber
menyelesaikan dan bekerja sampel dari mesin saya ...
sumber
Sesuai dokumentasi Android untuk Atribut XML android: layout_gravity , kita dapat melakukannya dengan mudah :)
sumber
Setel ke true
android:layout_alignParentTop="true"
danandroid:layout_centerHorizontal="true"
di Button, seperti ini:sumber
Anda juga dapat Mencoba Kode ini:
sumber
cukup gunakan (untuk membuatnya di tengah tata letak Anda)
dan gunakan
untuk mengubah posisi
sumber
Anda juga dapat mengatur lebar LinearLayout untuk
wrap_content
dan penggunaanandroid:layout_centerInParent
,android:layout_centerVertical="true"
:sumber
Ini bekerja untuk saya.
sumber
Apakah kamu mencoba ini?
sumber
menggunakan
sumber
Akan lebih mudah menggunakan tata letak relatif, tetapi untuk tata letak linier saya biasanya memusatkan dengan memastikan lebarnya cocok dengan induk:
dan kemudian berikan margin ke kanan dan kiri sesuai.
sumber