SORU
6 Aralık 2011, Salı


Android: ViewPager WRAP_CONTENT var kuramıyorum

Kur her sayfada 200dp yüksekliğinde bir İmageView olan basit bir ViewPager var.

İşte benim çağrı cihazı:

 pager = new ViewPager(this);
            pager.setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT));
            pager.setBackgroundColor(Color.WHITE);
            pager.setOnPageChangeListener(listener);
            layout.addView(pager);

Bu imageview sadece 200dp olsa bile wrap_content, çağrı cihazı her zaman ekranı doldurur kadar yüksekliğe rağmen ayarlayın. "200" ama bana birden çok çözümü ile farklı sonuçlar verir. ile çağrı cihazı yüksekliğini değiştirmek için çalıştım Ekle "" Bu değeri. dp kuramıyorum Nasıl çağrı düzeninde 200dp eklerim?

CEVAP
26 Aralık 2013, PERŞEMBE


Aşağıda bunu şu anda en büyük çocuğun boyuna olsun ** 3 geçersiz onMeasure.

@Override
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {

    int height = 0;
    for(int i = 0; i < getChildCount(); i  ) {
        View child = getChildAt(i);
        child.measure(widthMeasureSpec, MeasureSpec.makeMeasureSpec(0, MeasureSpec.UNSPECIFIED));
        int h = child.getMeasuredHeight();
        if(h > height) height = h;
    }

    heightMeasureSpec = MeasureSpec.makeMeasureSpec(height, MeasureSpec.EXACTLY);

    super.onMeasure(widthMeasureSpec, heightMeasureSpec);
}

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • BetterCoder

    BetterCoder

    17 Aralık 2012
  • Exalto_Gamer

    Exalto_Gamer

    15 EKİM 2014
  • SellerDp

    SellerDp

    27 EKİM 2009