Android Liste Görünümü yükseklik sınırı
Bir liste Görünümü altında bir düğme göstermek istiyorum. Eğer Liste Görünümü genişletilmiş alırsa sorun, (eklendi... maddeler), Bu düğme ekranın dışarı itti.
Ağırlık Android: why is there no maxHeight for a View? önerilen () ile bir LinearLayout çalıştım ama ya ağırlıkları yanlış anladım ya da sadece işe yaramadı.
Ayrıca, bir yerde bir RelativeLayout kullanmak için bir ipucu buldum. O zaman düğmesinin üzerinde ayarlanmış olan liste Görünümü": layout_above android" param.
Bu sorun daha sonra düğmesini konumuna nasıl bilmiyorum. Örnek buldum, Liste Görünümü kullanarak ayarlandı aşağıda Görünümünde ": layout_alignParentBottom" benim düğme ekranın altında sarılmak istemiyorum ama. android
Herhangi bir fikir ayrı setHeight yöntemi kullanarak ve bazı gerekli alanı hesaplıyor?
Zaman ayırdığınız için teşekkürler, denizanası
Edit: Yararlı cevaplar var, hepinize teşekkürler!
& user639183. çözüm bigstoneneredeysemükemmel çalıştı. Ancak, hala ekranı (ama sonra durdu) yarı yolda itti olacak gibi düğmesinin altına ekstra dolgu/bir marj eklemek zorunda kaldım
Göreli düzeni ile Adinia cevabı yalnızca düğme ekranın altında sabit istiyorsan gayet iyi. Niyet ettim ama yine de başkaları için faydalı olabilecek bir şey değil.
AngeloS çözümü sadece istedim etkisi yarattı sonunda seçtim. Ancak, düğme etrafında LinearLayout iki küçük değişiklik yaptım:
Benim düzen içinde herhangi bir mutlak değerlere sahip olmak istemedim ilk olarak:=layout_height android değiştirdim"45px" "sadece iyi çalışır.", wrap_content
İkinci dikey LinearLayout tarafından desteklenen merkezli horizontically, düğme istediğim gibi, android değiştirdim:="""". dikey ve Yatay yönelim
AngeloS ayrıca eğer android"0,1 Liste Görünümü herhangi bir etkisi vardı; ben sadece denedim ve gerçekten oluyor!" LinearLayout içinde param emin değildi bu onun ilk yazı da belirtildiği Olmadan, bu düğme ekranın tekrar dışarı itti alır.
CEVAP
Kod bu sorun, eğer 5'den fazla öğe varsa, sadece liste görünümü yükseklik ayarı çözdüm:
if(adapter.getCount() > 5){
View item = adapter.getView(0, null, listView);
item.measure(0, 0);
ViewGroup.LayoutParams params = new ViewGroup.LayoutParams(LayoutParams.MATCH_PARENT, (int) (5.5 * item.getMeasuredHeight()));
listView.setLayoutParams(params);
}
Kullanıcının yapması gereken bazı kaydırma olduğunu bilecek kadar tek bir madde 5.5 kat yüksekliği max yüksekliği ayarlayın, dikkat edin! :)
Nasıl Android Liste Görünümü ayırıcı ç...
Nasıl Android liste görünümü yenilemek...
Android: liste görünümü tıklatın devre...
Liste görünümü Öğeleri arasındaki boşl...
Farklı bir düzen ile Android liste Gör...