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

  • 2ndfloor91

    2ndfloor91

    17 Kasım 2007
  • Missouri Star Quilt Company

    Missouri Sta

    18 ŞUBAT 2009
  • Roger Huffman

    Roger Huffma

    4 ŞUBAT 2007