Я пытаюсь получить размер экрана на моем эмуляторе (API 7) с этим кодом:Получение размера экрана возврата 0
float scaledDensity = this.getResources().getDisplayMetrics().scaledDensity;
Теперь я пытаюсь использовать scaledDensity
с этим кодом:
int width = (width/((int) scaledDensity))/7;
и я получаю это исключение
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.tomer.workoutlog2/com.example.workoutlog.SimpleCalendarViewActivity}: java.lang.ArithmeticException: divide by zero
Полный код:
Display display = ((WindowManager) getSystemService(WINDOW_SERVICE))
.getDefaultDisplay();
int width = 0;
if (android.os.Build.VERSION.SDK_INT >= 13) {
Point size = new Point();
display.getSize(size);
width = size.x;
} else
width = display.getWidth();
float scaledDensity = this.getResources().getDisplayMetrics().scaledDensity;
width = (width/((int) scaledDensity))/7;
На моем реальном устройстве я не получаю эту ошибку. Возможно, проблема с эмулятором?
мне это нужно масштабировать. – dasdasd
Вы можете иметь scaleFactor по этому коду: 'float scaleFactor = displaymetrics.density;' –