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ş:
Nasıl Android çalışma zamanında geçerl...
Nasıl bir Android cihazı kontrol etmek...
Nasıl değişken olup olmadığını belirle...
Nasıl belirli bir Linux 32 bit veya 64...
Nasıl bir web sayfası doğrudan tarayıc...