SORU
24 HAZİRAN 2011, Cuma


Nasıl dp veya daldırma açısından ekran genişliğini belirlemek için Android çalışma zamanında?

Android widget dip/dp (java dosyaları) kullanarak düzeni koda ihtiyacım var. Zamanında ben kodu

int pixel=this.getWindowManager().getDefaultDisplay().getWidth();

bu piksel (px) ekran genişliği dönüş. Bu dp dönüştürmek için, kodlanmış:

int dp =pixel/(int)getResources().getDisplayMetrics().density ;

Bu doğru cevap dönüyor gibi görünmüyor. 800 480 olan WVGA800 emülatörü yaptım. Bu emülatörü çalıştırmak ve kod yazdırma piksel ve dp değerleri izin, hem de 320 geldi. Bu emülatör 0.75 olacak olan 240 dpi.

CEVAP
1 AĞUSTOS 2012, ÇARŞAMBA


Bu deneyin

    Display display = getWindowManager().getDefaultDisplay();
    DisplayMetrics outMetrics = new DisplayMetrics ();
    display.getMetrics(outMetrics);

    float density  = getResources().getDisplayMetrics().density;
    float dpHeight = outMetrics.heightPixels / density;
    float dpWidth  = outMetrics.widthPixels / density;

YA

Teşekkürler @Hubálek Tomáš

DisplayMetrics displayMetrics = context.getResources().getDisplayMetrics();

        float dpHeight = displayMetrics.heightPixels / displayMetrics.density;
        float dpWidth = displayMetrics.widthPixels / displayMetrics.density;

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • boogie2988

    boogie2988

    6 NİSAN 2006
  • Phlearn Photoshop and Photography Tutorials

    Phlearn Phot

    11 EKİM 2011
  • Triune Films

    Triune Films

    9 ŞUBAT 2006