Mam ekran o wielkości 600 (szerokość) x 1024 (wysokość). Otrzymuję bieżącą szerokość 600, ale niepoprawnie osiągam wysokość 976 (bez obracanego ekranu). Otrzymuję aktualną szerokość 1024, ale źle otrzymuję wysokość 552 (z obróconym ekranem).Niewłaściwa szerokość i wysokość wyświetlania w systemie Android
int rowPixelWidth = ((WindowManager) getSystemService(Context.WINDOW_SERVICE)).getDefaultDisplay().getWidth();
int rowWidth = (int)Math.floor(rowPixelWidth/this.getResources().getDisplayMetrics().density);
int rowPixelheight = ((WindowManager) getSystemService(Context.WINDOW_SERVICE)).getDefaultDisplay().getHeight();
int rowheight = (int)Math.floor(rowPixelheight/this.getResources().getDisplayMetrics().density);
Log.d("rowWidth","rowWidth"+rowWidth);
Log.d("rowheight","rowheight"+rowheight);
-------------------------------------------------------------
<uses-sdk
android:minSdkVersion="3"
android:targetSdkVersion="8" />
<supports-screens android:anyDensity="true"/>
-------------------------------------------------------------
Co jest nie tak z tym kodem?
Oto niektóre numery dla typowych szerokości ekranu:
- 320dp: typowy ekran telefonu (240x320 ldpi, 320x480 MDPI, 480x800 hdpi, etc).
- 480dp: nowy tablet, taki jak pasmo (480x800 mdpi).
- 600dp: tablet 7 "(600 x 1024 mdpi).
- 720dp: tablet 10 "(720 x 1280 mdpi, 800 x 1280 mdpi itd.).
uzyskać bieżącą szerokość, ale nie dostać bieżącą wysokość dla każdego urządzenia (bez (320x480 ekranu).
Staram kod z Get screen dimensions in pixels ale sama wystąpić problem.
Twój kod jest poprawny. Niektóre urządzenia odejmują obszar ekranu od poprzednich przycisków sprzętowych, którymi są teraz przyciski dotykowe na wyświetlaczu, od dostępnej rozdzielczości ekranu. –
Otrzymuję aktualną szerokość i wysokość tylko 320 (szerokość) x 480 (wysokość) ekran, ale nie otrzymuję aktualnej szerokości i wysokości innego ekranu. – AnilPatel
I dlaczego jest to problem? –