Saya memiliki kode ini di aplikasi saya:
LinearLayout.LayoutParams params =
new LinearLayout.LayoutParams(WRAP_CONTENT, WRAP_CONTENT);
dan saya hanya ingin menyetel orientasi LinearLayout ke vertikal. Persamaan dalam XML adalah:
android:orientation="vertical"
Bagaimana saya bisa melakukannya dalam kode, tanpa XML?
myLayout.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
Anda perlu membuat instance LinearLayout. Setelah itu Anda bisa memanggil setOrientation ()
LinearLayout myLayout = ...; myLayout.setLayoutParams(new LayoutParams(LinearLayout.WRAP_CONTENT, LinearLayout.WRAP_CONTENT); myLayout.setOrientation(LinearLayout.VERTICAL);
Itu harus melakukan pekerjaan itu :)
Untuk info lebih lanjut, periksa Android API .
sumber
Contoh yang berfungsi di bawah ini (LayoutParams.WRAP_CONTENT, BUKAN LinearLayout.WRAP_CONTENT)
myLayout.setOrientation(LinearLayout.VERTICAL); LinearLayout.LayoutParams layoutParams = new LinearLayout.LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT); myLayout.setLayoutParams(layoutParams);
sumber
Jika ada orang lain yang datang ke sini seperti saya mencari jawaban untuk Xamarin, padanannya adalah:
LinearLayout layout = /* ... */; layout.Orientation = Orientation.Vertical; layout.LayoutParameters = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MatchParent, LinearLayout.LayoutParams.WrapContent);
sumber
Cukup gunakan sebagai berikut: -
LinearLayout mlayout = new LinearLayout(context); mlayout.setOrientation(2);
2 berarti
Vertical
, 1 digunakan untukhorizontal
.sumber