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

  • BlackmillMusic

    BlackmillMus

    3 Kasım 2010
  • Christian Atlas

    Christian At

    26 Mart 2009
  • How It Should Have Ended

    How It Shoul

    5 Mart 2007