Saya membuat sederhana AlertDialog
dalam Aktivitas saya :
View view = layoutInflater.inflate(R.layout.my_dialog, null);
AlertDialog infoDialog = new AlertDialog.Builder(MyActivity.this)
.setView(view)
.create();
infoDialog.show();
Dengan kode di atas, dialog muncul di (tentang) tengah layar.
Saya bertanya-tanya, bagaimana cara menyesuaikan posisi dialog agar ditampilkan tepat di bawah Bilah Tindakan atas? (Apakah ada cara untuk mengubah gravitasi atau sesuatu dari dialog?) Dan bagaimana melakukannya berdasarkan kode saya ??
Jawaban:
Saya menggunakan kode ini untuk menampilkan dialog di bagian bawah layar:
Kode ini juga mencegah android meredupkan latar belakang dialog, jika Anda membutuhkannya. Anda harus dapat mengubah parameter gravitasi untuk memindahkan dialog
sumber
wlp.x
danwlp.y
kolom untuk secara eksplisit menyetel lokasi dialog di layar. Saya belum mencobanya sendiri, tetapi mungkin berhasil.Anda dapat menyesuaikan dialog Anda berdasarkan gravitasi dan parameter tata letak mengubah gravitasi dan parameter tata letak berdasarkan kebutuhan Anda
sumber
'FILL_PARENT'
sudah ditinggalkan. Saya menggunakan API 21. Sesuai dengan Referensi PengembangSaya menemukan cuplikan kode ini dari kode @gypsicoder di sini
Di sini nilai posisi x adalah piksel dari kiri ke kanan. Untuk nilai posisi y dari bawah ke atas.
sumber
Bagi saya, ini berhasil dengan cukup baik di mana saya mencoba memposisikan dialog saya di suatu tempat tepat di bagian bawah tampilan teks tempat dialog itu dipilih.
sumber
Baru
BottomSheetDialog
:sumber
cukup tambahkan ini ke kode Anda:
sumber
sumber
Untuk aktivitas Dialog saya, saya menggunakan yang ini:
sumber
saya menggunakan metode ini
sumber
gunakan bottomSHeet:
sumber
sumber