2016-09-12 3 views
0

У меня есть приложение с различными версиями для экранов (маленькие, обычные, большие и дополнительные файлы XML), каждый из которых имеет свой XML-дизайн для каждого типа, но я нашел телефон Huawei с этим экраном 3,5 "HVGA 320x480Использование различных макетов экрана

Мой вопрос: не должен ли пользовательский интерфейс Android использовать небольшую конфигурацию для этого экрана? Это приложение при работе на этом телефоне использует обычную конфигурацию, как если бы это было nexus4 4.7 "768x1280, поскольку я меняю это?

Я попытался создать различные типы экрана (создать другое) с несколькими конфигурациями без оптимального результата.

ответ

-1

Это довольно просто.
Вам нужно добавить другой интерфейс и сделать элементы управления VISIBILE и GONE.

int appScreen = getResources().getConfiguration().screenLayout & 
     Configuration.SCREENLAYOUT_SIZE_MASK; 


switch(appScreen) { 
    case Configuration.SCREENLAYOUT_SIZE_LARGE: 
    UIControl.setVisibility(View.GONE); 
     break; 
    case Configuration.SCREENLAYOUT_SIZE_NORMAL: 
    UIControl.setVisibility(View.GONE); 
     break; 
    case Configuration.SCREENLAYOUT_SIZE_SMALL: 
    UIControl.setVisibility(View.GONE); 
     break; 
    default: 
    UIControl.setVisibility(View.GONE); 
} 
+0

Лучше всего просто предоставить разные файлы макета XML для каждой конфигурации. –

+0

, что тоже имеет смысл –

1

Предполагая, что измерения 3,5" на диагонали, это работает около 165 точек на дюйм, который попадает в MDPI (или нормального размера экрана) ведро в соответствии с поддержкой множества руководства экранов Android.

DPI = sqrt(w^2 + h^2)/d 

where 

w is the width of the display in pixels 
h is the height of the display in pixels 
d is the physical diagonal measurement of the display in inches 
Смежные вопросы