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

  • AverageBroTV

    AverageBroTV

    20 Mart 2013
  • oHeymarvin

    oHeymarvin

    11 Temmuz 2013
  • SoundHound

    SoundHound

    8 Mart 2006