Android konwersji px do Dp (proporcje wideo) [duplikat]
Możliwy duplikat:
konwersja pikseli na dp w Androidzie
Próbuję przekonwertować piksele na dp. Jaka jest formuła?
Konwertujemy 640 i 480 na dp. Docs say this
Konwersja jednostek dp na piksele ekranu jest prosta: px = dp * (dpi / 160)
Ale nie sądzę, że tego potrzebuję (i nie wiem, jak tego użyć). Chyba potrzebuję forumla. Mam gotowy kod:
DisplayMetrics metrics = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(metrics);
switch(metrics.densityDpi)
{
case DisplayMetrics.DENSITY_LOW:
int sixForty = ?
int fourEighty = ?
break;
case DisplayMetrics.DENSITY_MEDIUM:
int sixForty = ?
int fourEighty = ?
break;
case DisplayMetrics.DENSITY_HIGH:
int sixForty = ?
int fourEighty = ?
break;
}
21
1 answers
Zamiast próbować wywnioskować Współczynnik konwersji dp z klasyfikacji gęstości ekranu, możesz po prostu zapytać go bezpośrednio:
getWindowManager().getDefaultDisplay().getMetrics(metrics);
float logicalDensity = metrics.density;
LogicalDensity będzie zawierać czynnik, który należy pomnożyć przez dp, aby uzyskać fizyczne wymiary w pikselach ekranu urządzenia.
int px = (int) Math.ceil(dp * logicalDensity);
72
Author: mportuesisf,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-01-07 23:07:02
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-01-07 23:07:02