Мне нужно использовать определенные xml-макеты на основе разрешения экрана, не размер. Итак, первая конструкция используется для разрешения < = 480x800, а вторая - для разрешения> 480x800.Предоставление уникального макета для определенного разрешения в Android 2.3.3
Как это сделать?
обновление.
Я придумал
Display display = ((WindowManager) getSystemService(Context.WINDOW_SERVICE)).getDefaultDisplay();
final int height = display.getHeight();
final int width = display.getWidth();
int leadingResolutionSize = Math.max(height, width);
if(leadingResolutionSize <= 800){
setContentView(R.layout.main);
}else if(leadingResolutionSize > 800 && leadingResolutionSize <= 1024){
setContentView(R.layout.main_1024_600);
}else if(leadingResolutionSize > 1024){
setContentView(R.layout.main_1280_800);
}
Как вы думаете, что это хорошее решение?
Это не работает для меня (Android 2.3.3). У меня есть/res/layout-hdpi,/res/layout-xhdpi,/res/layout-xlarge. Для всех трех AVD, которые я создал (480x800, 1024x600, 1280x800), я получаю макет из/res/layout-hdpi. Можете ли вы опубликовать образец проекта? Еще одна вещь, которую я нашел выше (magager) - стоит ли попробовать? Он точно определяет каждую резолюцию, поэтому я могу, по крайней мере, «если» между макетами – user1384991