Nasıl ekran genişlik ve yükseklik için ... | Netgez.com
SORU
29 HAZİRAN 2011, ÇARŞAMBA


Nasıl ekran genişlik ve yükseklik için ...

Android uygulaması geliştirme: ekran genişlik ve yükseklik almak için aşağıdaki kodu kullanmaya çalıştım

Display display = getWindowManager().getDefaultDisplay(); 
int screenWidth = display.getWidth();
int screenHeight = display.getHeight();

ama aldımNullPointerExceptiondisplay, neden? benim nasıl genişlik ve yükseklik ekran almak için?

CEVAP
29 HAZİRAN 2011, ÇARŞAMBA


Eğer bir Faaliyet dışında bu arıyorsanız, bu bağlamda geçmek (veya başka bir çağrı olsun) gerekir. Ekran ölçülerini almak için bunu kullanın:

DisplayMetrics metrics = context.getResources().getDisplayMetrics();
int width = metrics.widthPixels;
int height = metrics.heightPixels;

GÜNCELLEME: API getRealSize kullanabilirsiniz 17 , kat:

Point displaySize = new Point();
activity.getWindowManager().getDefaultDisplay().getRealSize(displaySize);

Eğer istersenizmevcutpencere boyutu, getDecorView dekor gerçek ekran boyutu boyutunu görüntülemek çıkarılarak kullanılabilir alanını hesaplamak için kullanabilirsiniz:

Point displaySize = new Point();
activity.getWindowManager().getDefaultDisplay().getRealSize(displaySize);

Rect windowSize = new Rect();
ctivity.getWindow().getDecorView().getWindowVisibleDisplayFrame(windowSize);

int width = displaySize.x - Math.abs(windowSize.width());
int height = displaySize.y - Math.abs(windowSize.height());
return new Point(width, height);

getRealMetrics de işe yarayabilir (API level 17 gerektirir ), ama henüz hiç denemedim:

DisplayMetrics metrics = new DisplayMetrics();
activity.GetWindowManager().getDefaultDisplay().getRealMetrics(metrics);

Bunu PaylaÅŸ:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • 24 Канал

    24 КанаÐ

    5 ÅžUBAT 2006
  • FrameCityJackal

    FrameCityJac

    4 Aralık 2010
  • Machinima

    Machinima

    17 Ocak 2006