2013-06-26 2 views
0

Я знаю, что вы можете установить конкретные макеты для устройства, как это:ориентированных на различные андроид устройства

if(android.os.Build.MODEL.equals("Galaxy S II")){ 

     setContentView(R.layout.resultsGS2); 
    } 
    else if(android.os.Build.MODEL.equals("Nexus 7")){ 
     setContentView(R.layout.resultsN7); 
    } 
    else{ 

     setContentView(R.layout.results); 
    } 

Но то, что я хочу сделать макет для всех устройств, которые имеют аналогичные размеры экрана/размеры. Я смотрел на это: http://developer.android.com/guide/topics/resources/providing-resources.html, и я попытался переименовать папку макета много разных вещей, и всякий раз, когда я пытаюсь отредактировать xml-файл в новой папке макета, которую я создал, и я меняю предварительный просмотр устройства, он продолжает переходить к макету по умолчанию. Я использую андроид-студию и полагаю, что нужно сделать новую раскладку из предварительного просмотра устройства, которое она показывает. Есть ли более простой способ сделать это, помимо создания макета для каждого конкретного устройства?

ответ

1

Это можно сделать, имея разные папки макета и вызывая их , а затем отредактировать макеты внутри этих папок в соответствии с размером экрана, на который вы нацеливаетесь.

Так, например, если вы хотите нацелить что-то вроде галактики nexus (320dpi), вы создали бы папку с именем layout-xhdpi, и здесь будут размещены все макеты устройства. И затем, если вы запустите это в эмуляторе или физическом устройстве, вы увидите макет, который вы создали специально для этого размера экрана.