SORU
30 Mart 2011, ÇARŞAMBA


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
10 NİSAN 2012, Salı


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! :)

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Ionized Digital Air Studios

    Ionized Digi

    20 HAZİRAN 2009
  • Dogbert files

    Dogbert file

    12 Ocak 2012
  • Matt Stokes

    Matt Stokes

    22 Ocak 2008