2010-03-08 4 views
12

Je veux créer des dossiers séparés pour mes mises en page, comme celui-ci dans mon répertoire de ressources:Comment créer un dossier layout-small-land?

layout-land 
layout-port 

c'est ok, mais:

layout-small-land 
layout-small-port 

ou

layout-land-small 
layout-port-small 

Résultats en : 'Nom de répertoire de ressources incorrect'

Que donne?

Répondre

5

layout-small-land et layout-small-port sont les bonnes réponses, et compilent très bien pour moi. Peut-être qu'il y a quelque chose d'autre dans votre structure de répertoire.

+1

s'avère que mon application a été ciblée pour 1,5 au lieu de 1,6. Une fois que j'ai changé la cible, elle s'est bien compilée. Merci d'avoir précisé que les noms des dossiers auraient dû marcher pour moi. – codedeziner

+0

Ah, oui, les suffixes des ensembles de ressources '-small' et' -large' ne sont pas apparus avant la 1.6. – CommonsWare

5

Vous pouvez spécifier la densité de l'écran au lieu d'une taille comme grande ou petite

Exemple:

layout-port-hdpi 
layout-port-ldpi 
layout-port-mdpi 
layout-port-nodpi 

layout-land-hdpi 
layout-land-ldpi 
layout-land-mdpi 
layout-land-nodpi 

Plus d'informations sur le lien suivant:

https://developer.android.com/guide/topics/resources/resources-i18n.html#AlternateResources

Pour CONSIDÉRABLEMENT , Moyen, petit c'est le chemin:

res/layout/my_layout.xml   // layout for normal screen size 
res/layout-small/my_layout.xml  // layout for small screen size 
res/layout-large/my_layout.xml  // layout for large screen size 
res/layout-large-land/my_layout.xml // layout for large screen size in landscape mode 
+0

alors pourquoi y a-t-il des options d'orientation de l'écran petit/normal/grand? BTW, ma cible est 1.6 – codedeziner

+0

'large' et' small' sont des suffixes d'ensemble de ressources valides. Voir la troisième rangée (après les en-têtes) du tableau 2 sur la page que vous avez liée à ci-dessus. – CommonsWare

+0

édité ma réponse là, ils sont tous les moyens valides d'utiliser grand ou petit etc. dans le nom du dossier –

0

Je n'ai rien trouvé d'autre sur le web qui référence cette structure, mais l'article suivant montre un exemple où l'auteur utilise ldpi (et j'en suis sûr mdpi et hdpi) au lieu de petit, normal et grand (comme le suggère la référence androïde en ligne). Jetez un oeil sur le lien ci-dessous et peut-être essayer cette structure:

http://android.amberfog.com/?p=276

+0

À mi-chemin de la page ici: http://developer.android.com/guide/practices/screens_support.html Il y a un exemple en utilisant layout-large-land.Considérant petit/normal/grand et port/terre sont des options, je me demande pourquoi je ne peux pas les utiliser. – codedeziner

1

Il vous donnera un "invalid resource error" jusqu'à ce que le dossier est vide. Si vous le remplissez avec les fichiers .xml (ils doivent correspondre exactement dans tous les dossiers layout-<qualifier>), il ne vous donne aucune erreur.

EG:

mise en page port

-> mainscreen.xml

layout-grand port

-> mainscreen.xml

c'est bon

Questions connexes