agherschon Posté(e) 24 décembre 2009 Share Posté(e) 24 décembre 2009 Bonjour, je travaille sur ma première application Android. Le but est d'écouter une radio online précise. Je voudrais afficher un fond avec des éléments par dessus, à des endroits précis (titre de la chanson courante, nom du groupe, pochette de l'album de la chanson écoutée), et un bouton play/pause. Ça marche très bien en HVGA : Par contre sur un écran comme le HTC Tattoo, en QVGA, ça donne ça : Comme vous le voyez, les éléments sont à chaque fois un peu trop décalés vers le bas. Pas de problèmes en largeur par contre. Concernant la vue, j'utilise deux FrameLayout dans un AbsoluteLayout, c'est la manière que j'ai trouvé pour mixer le fait d'afficher des éléments sur un fond et préciser leurs positions exactes. Je n'utilise que des DIP comme unité, d'où ma totale incompréhension du problème. <?xml version="1.0" encoding="utf-8"?> android:layout_height="fill_parent" xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/AbsoluteLayout"> android:layout_height="fill_parent" android:layout_x="0dip" android:layout_y="0dip" android:id="@+id/FrameLayoutBackground"> android:layout_width="fill_parent" android:id="@+id/oxyradio" android:layout_x="0dip" android:layout_y="2dip" android:background="@drawable/background" android:adjustViewBounds="true"> android:layout_height="fill_parent" android:layout_x="0dip" android:layout_y="0dip" android:id="@+id/FrameLayoutUI"> android:layout_height="fill_parent" xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/AbsoluteLayoutUI"> android:layout_height="wrap_content" android:id="@+id/songTitle" android:text="Song Title" android:textColor="@color/titleSongColor" android:textStyle="bold" android:typeface="sans" android:textSize="17dip" android:layout_x="35dip" android:layout_y="58dip"> android:layout_height="wrap_content" android:id="@+id/groupName" android:layout_x="35dip" android:layout_y="85dip" android:text="Group Name" android:textColor="@color/groupNameColor" android:textStyle="bold" android:typeface="sans" android:textSize="17dip"> android:layout_height="wrap_content" android:id="@+id/coverView" android:adjustViewBounds="true" android:cropToPadding="true" android:maxHeight="150dip" android:maxWidth="150dip" android:minHeight="150dip" android:minWidth="150dip" android:layout_x="85dip" android:layout_y="163dip"> android:layout_height="wrap_content" android:id="@+id/PlayPauseButton" android:layout_x="128dip" android:layout_y="342dip" android:background="@drawable/play"> Merci d'avance pour votre aide ! Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
neoakira Posté(e) 25 décembre 2009 Share Posté(e) 25 décembre 2009 http://developer.android.com/intl/fr/guide/practices/screens_support.html si ton appli est pour android 1.5, il faut la compiler avec 1.6 pour supporter les "small screen" : dans AndroidManifest.xml : et dans default.properties : target=android-4 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
Profete162 Posté(e) 25 décembre 2009 Share Posté(e) 25 décembre 2009 Cette page ci semble sympa aussi pour t'aider... L'exemple ressemble au tien.. http://developer.android.com/intl/fr/resources/samples/MultiResolution/index.html Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
popolbx Posté(e) 25 décembre 2009 Share Posté(e) 25 décembre 2009 d'ailleur ça explique pourquoi les images sont plsu en fausse 3D sur Android 2....la fausse 3D est pas étirable ^^) Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
Alocaly Posté(e) 27 décembre 2009 Share Posté(e) 27 décembre 2009 d'ailleur ça explique pourquoi les images sont plsu en fausse 3D sur Android 2....la fausse 3D est pas étirable ^^) ?? C'est quoi cette fausse 3D dont tu parles ? Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
popolbx Posté(e) 27 décembre 2009 Share Posté(e) 27 décembre 2009 les icônes en perspective. -- Posté depuis BBFoC Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
Cyril Mottier Posté(e) 27 décembre 2009 Share Posté(e) 27 décembre 2009 d'ailleur ça explique pourquoi les images sont plsu en fausse 3D sur Android 2....la fausse 3D est pas étirable ^^) Euh ça n'a rien à voir ... les icônes du menu, du homescreen, etc. n'ont jamais été étirables (concept de 9-patches). Pour gérer les densités différentes il faut utiliser les dossier ldpi, mdpi et hdpi. Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
popolbx Posté(e) 27 décembre 2009 Share Posté(e) 27 décembre 2009 justement si le homescreen etait 9patch, pas besoin de refaire 3 fois le boulot et de l alourdir. -- Posté depuis BBFoC Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
Alocaly Posté(e) 27 décembre 2009 Share Posté(e) 27 décembre 2009 les icônes en perspective. Ah d'accord !! Effectivement, je m'etais posé la question. Je me souviens d'un article de google qui indiquait comment faire leurs icones en perspective, avec l'angle qu'il fallait prendre, et tout plein de trucs bien compliqué... Pour que maintenant, ils fassent des betes icones 2D... Effectivement, ca peut etre a cause des resolutions d'ecran.... Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
popolbx Posté(e) 27 décembre 2009 Share Posté(e) 27 décembre 2009 enfin mon idée est un peu conne parce que les icones des applis sont pas 9patch. par contre si dans un futur proche on nous oblige à faire des 9patch...pensez à moi ;) Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
Cyril Mottier Posté(e) 29 décembre 2009 Share Posté(e) 29 décembre 2009 enfin mon idée est un peu conne parce que les icones des applis sont pas 9patch.par contre si dans un futur proche on nous oblige à faire des 9patch...pensez à moi ;) Une telle obligation limiterait énormément la création ... Le concept de 9-patchs est extrêmement puissant mais ne permet pas non plus de tout faire ^^ Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
Nivek Posté(e) 29 décembre 2009 Share Posté(e) 29 décembre 2009 C'est un peu HS par rapport au topic d'origine mais je pense surtout qu'ils sont revenus en arrière sur les icônes en perspective parceque 80% des développeurs n'étaient pas capables de créer une icône en suivant cette règle. Et par ailleurs, ça n'apportait pas forcément grand chose au look&feel... C'est bien joli d'imposer des règles de design encore faut-il qu'elles soient applicables. :lol: Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
Nivek Posté(e) 29 décembre 2009 Share Posté(e) 29 décembre 2009 Dans le sujet cette fois, l'impression du décallage vers le bas de tes éléments d'UI sont dûs au fait que la taille de ton image de fond est étirée pour remplir l'écran. Sur un écran plus petit, l'image de fond est compressée en hauteur, tandis que les boutons et libellés gardent bien eux leur positionnement en dip. Le fait que tu aies mis android:adjustViewBounds="true" ne change rien car : - l'attribut android:background qui porte ton image de fond est en fait l'attribut "background" commun à toutes les Views. - l'imageview que tu as déclarée n'est pas réellement utilisée en tant qu'ImageView, son attribut adjustViewBound serait appliqué par le système sur une image que tu aurais affectée via l'attribut android:src ou programmatiquement via setImage*() Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
Recommended Posts
Rejoignez la conversation
Vous pouvez poster maintenant et vous enregistrez plus tard. Si vous avez un compte, connectez-vous maintenant pour poster.