SORU
10 EYLÜL 2010, Cuma


TextView.setTextSize davranır anormal - Nasıl ayarlamak için metin boyutu textview dinamik olarak farklı ekranlar için

TextView.setTextSize() Arama anormal çalışıyor. Aramadan sonra, eğer daha önce bu yola ne o getTextSize çok daha yüksek bir geri dönen bir değer alırsak 3 ** için.

Yaptığımız şey şu:

zoomControl.setOnZoomInClickListener(new OnClickListener() {
    public void onClick(View view) {
        float size = mViewShabad.getTextSize()   1;
        textView.setTextSize(size);
    }
});

Kimse bunu daha önce gördün mü?

CEVAP
10 EYLÜL 2010, Cuma


Fark burada setTextSize(int size) yöntemi, varsayılan olarak birim türü olan "" veya "ölçeklenmiş piksel". sp Bu değer her ekran yoğunluğu () ldpi, mdpi, hdpi için farklı piksel bir boyut olacak.

getTextSize() öte yandan, gerçek piksel metin boyutları verir.

setTextSize(int unit, float size) birim türünü belirlemek için kullanabilirsiniz. Bunun için sabit değerleri TypedValue sınıf içinde bulunabilir, ama bunlardan bazıları:

TypedValue.COMPLEX_UNIT_PX   //Pixels

TypedValue.COMPLEX_UNIT_SP   //Scaled Pixels

TypedValue.COMPLEX_UNIT_DIP  //Device Independent Pixels

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • CrazyMan

    CrazyMan

    14 Mayıs 2008
  • Klemens Torggler

    Klemens Torg

    11 Mart 2008
  • Ludique

    Ludique

    21 NİSAN 2009