vince123 Posté(e) 4 juin 2010 Share Posté(e) 4 juin 2010 Bonjour les androiens, Je vous explique déjà ce que j'ai : - une scrollview - une textview (très, très longue) J'ai 2 menus (2 relatives layout composée d'ImageButton) qui doivent apparaitre (grâce à un click) en haut et en bas de ma fenêtre :) Seulement je n'arrive pas à placer ces 2 menus autre part qu'en haut et en bas de ma textview (donc besoin de faire défiler toute ma textiview pour avoir accés aux menus). :o :o J'aimerai que ces 2 menus apparaissent en haut et en bas de l'écran quelque soit quelque soit l'endroit où je serais dans ma textview :P :lol: Merci d'avance. Bonne journée :cool: Vince Lien vers le commentaire Partager sur d’autres sites More sharing options...
Nivek Posté(e) 4 juin 2010 Share Posté(e) 4 juin 2010 linearlayout vertical contenant - menu 1 - ScrollView - menu 2 Lien vers le commentaire Partager sur d’autres sites More sharing options...
Infernus Posté(e) 4 juin 2010 Share Posté(e) 4 juin 2010 Je dirais exactement la même chose que Nivek :) Et tu les caches lorsque tu n'en as pas besoin Lien vers le commentaire Partager sur d’autres sites More sharing options...
vince123 Posté(e) 4 juin 2010 Auteur Share Posté(e) 4 juin 2010 linearlayout vertical contenant- menu 1 - ScrollView - menu 2 Merci, je vais tester ça et voir si le Scrollview me le permet ^^ Je dirais exactement la même chose que Nivek :) Et tu les caches lorsque tu n'en as pas besoin Oui, c'est déjà gérer en "slidant" en plus ^^ :P Merci à vous 2 et à lundi, je ne pourrai pas répondre avant :D Lien vers le commentaire Partager sur d’autres sites More sharing options...
vince123 Posté(e) 7 juin 2010 Auteur Share Posté(e) 7 juin 2010 Bonjour, j'ai testé !! :( :( :( On s'occupe que du menu 1 pour le moment (menu du haut) Mon problème or je veux ceci Donc si je suis en haut de page, je veux avoir mon menu qui "écrase" mon champ titre ! Or sans apparition du menu j'ai : titre => blabla et avec apparition du menu j'ai : menu => titre => blabla et je veux avec apparition => menu (qui écrase titre) => blabla Merci Lien vers le commentaire Partager sur d’autres sites More sharing options...
Nivek Posté(e) 7 juin 2010 Share Posté(e) 7 juin 2010 Dans ce cas utilise un framelayout, c'est parfait pour gérer de simples superpositions. Lien vers le commentaire Partager sur d’autres sites More sharing options...
Infernus Posté(e) 7 juin 2010 Share Posté(e) 7 juin 2010 Ton titre est dans la scrollView ? si c'est le cas il faudrait integrer ton menu dans la scroll view en lieu et place de ton titre. Ou bien enlever le titre de la liste. Enfin c'est ce qui me viens à l'esprit de ce que j'ai compris de ton problème :| Edit : Le sage a parlé et son intervention est plus pertinente que la mienne ;) Lien vers le commentaire Partager sur d’autres sites More sharing options...
vince123 Posté(e) 7 juin 2010 Auteur Share Posté(e) 7 juin 2010 Dans ce cas utilise un framelayout, c'est parfait pour gérer de simples superpositions. héhé, c'est que j'avais fait à la base ^^, mais je vais re-tester alors ! Lien vers le commentaire Partager sur d’autres sites More sharing options...
vince123 Posté(e) 7 juin 2010 Auteur Share Posté(e) 7 juin 2010 Ton titre est dans la scrollView ? si c'est le cas il faudrait integrer ton menu dans la scroll view en lieu et place de ton titre. Ou bien enlever le titre de la liste.Enfin c'est ce qui me viens à l'esprit de ce que j'ai compris de ton problème :| Edit : Le sage a parlé et son intervention est plus pertinente que la mienne ;) Impossible à faire marcher correctement grrrr ! :o edit : @Infernus => oui regarde mon titre est dans le scrollview (android:id="@+id/title_text") :P :P Si vous voyez quelque chose, dites le moi ! Descriptif : 1er menu scrollview 2ème menu <?xml version="1.0" encoding="utf-8"?> xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:id="@+id/frame" android:layout_width="fill_parent" android:layout_height="fill_parent" android:background="@color/bg"> xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/relative" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_marginTop="3dp" android:layout_above="@+id/scrollview"> android:id="@+id/edittext" android:layout_width="@dimen/autocomplete_width" android:layout_height="wrap_content" android:layout_marginLeft="@dimen/margin_left" android:completionThreshold="2"/> android:id="@+id/research_button" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@android:drawable/ic_search_category_default" android:layout_toRightOf="@+id/edittext" android:layout_marginRight="@dimen/margin_right"/> xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/scrollview" android:layout_width="fill_parent" android:layout_height="wrap_content" android:orientation="vertical" android:background="@color/bg"> xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/principal_relative" android:layout_width="fill_parent" android:layout_height="fill_parent" android:onClick="menu" android:background="@color/bg"> android:id="@+id/title_text" android:text="@string/title_text" android:textSize="@dimen/title" android:layout_height="wrap_content" android:layout_width="fill_parent" android:layout_marginLeft="@dimen/margin_left" android:layout_marginRight="@dimen/margin_right"/> android:layout_width="wrap_content" android:layout_height="2dp" android:background="@color/trait" android:layout_marginLeft="12dp" android:layout_marginRight="12dp" android:layout_marginBottom="8dp" android:layout_below="@+id/title_text" android:paddingTop="10dp"> android:id="@+id/data" android:text="@string/data" android:layout_height="wrap_content" android:layout_width="fill_parent" android:layout_marginLeft="@dimen/margin_left" android:layout_marginRight="@dimen/margin_right" android:layout_below="@+id/View01"/> android:id="@+id/relative_menu" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_alignBottom="@+id/data"> android:layoutAnimation="@anim/layout_bottom_to_top_slide" android:id="@+id/home_button" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/ic_menu_home" android:layout_marginLeft="@dimen/margin_left2"/> android:id="@+id/prev_button" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/ic_menu_back" android:layout_toRightOf="@+id/home_button" android:layout_centerHorizontal="true" android:layout_marginLeft="@dimen/margin_left2"/> android:id="@+id/forw_button" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/ic_menu_forward" android:layout_toRightOf="@+id/prev_button" android:layout_centerHorizontal="true" android:layout_marginLeft="@dimen/margin_left2"/> android:id="@+id/sum_button" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@android:drawable/ic_menu_agenda" android:layout_toRightOf="@+id/forw_button" android:layout_marginLeft="@dimen/margin_left2"/> Lien vers le commentaire Partager sur d’autres sites More sharing options...
Nivek Posté(e) 7 juin 2010 Share Posté(e) 7 juin 2010 L'ordre de déclaration dans le FrameLayout devrait être plutôt - ScrollView - Menu1 - Menu2 L'ordre des 2 derniers n'a d'ailleurs pas d'importance, ce qui compte c'est que ton menu1 et ton menu2 soient déclarés après la ScrollView pour pouvoir être empilés par dessus. En l'état, ton framelayout affiche : - menu1 - Scrollview (qui écrase donc ton menu1) - menu2 Lien vers le commentaire Partager sur d’autres sites More sharing options...
vince123 Posté(e) 7 juin 2010 Auteur Share Posté(e) 7 juin 2010 L'ordre de déclaration dans le FrameLayout devrait être plutôt- ScrollView - Menu1 - Menu2 L'ordre des 2 derniers n'a d'ailleurs pas d'importance, ce qui compte c'est que ton menu1 et ton menu2 soient déclarés après la ScrollView pour pouvoir être empilés par dessus. En l'état, ton framelayout affiche : - menu1 - Scrollview (qui écrase donc ton menu1) - menu2 Je suis d'accord et en effet le Scrollview écrase mon menu1, j'avais fait ça au début (le Scrollview en 1er), seulement ensuite, je peux pas mettre mes 2 menus, puisque le Scrollview n'autorise qu'un seul enfant (en direct) edit : je re test demain, bonne soirée Lien vers le commentaire Partager sur d’autres sites More sharing options...
Nivek Posté(e) 7 juin 2010 Share Posté(e) 7 juin 2010 Les balises XML de tes menus ne doivent pas être à l'intérieur de la ScrollView, mais au même niveau, c'est à dire des enfants du FrameLayout. Lien vers le commentaire Partager sur d’autres sites More sharing options...
vince123 Posté(e) 8 juin 2010 Auteur Share Posté(e) 8 juin 2010 Mon cher Nivek, Si j'ai bien compris, l'arborescence est donc : FrameLayout (parent) ScrollView, Menu1, Menu2 (enfant) Fin FrameLayout (fin parent) je vais tester cela ! Lien vers le commentaire Partager sur d’autres sites More sharing options...
Nivek Posté(e) 8 juin 2010 Share Posté(e) 8 juin 2010 C'est ça. Juste pour être clair : ;) Lien vers le commentaire Partager sur d’autres sites More sharing options...
Nivek Posté(e) 8 juin 2010 Share Posté(e) 8 juin 2010 Pour la suite, si tu souhaites réutiliser tes menus dans d'autres activity, jette un oeil sur les include : http://d.android.com/resources/articles/layout-tricks-reuse.html Lien vers le commentaire Partager sur d’autres sites More sharing options...
vince123 Posté(e) 8 juin 2010 Auteur Share Posté(e) 8 juin 2010 C'est ça. Juste pour être clair : ;) Je viens de tester, alors ca règle mon problème initial à savoir : j'ai bien mes 2 menus non pas en fonction de mon TextView, mais en fonction de ma fenêtre, donc très bien !! Seulement maintenant, je me retrouve avec une "jolie" superposition du menu2 sur menu1 (voir ci-dessous). Je pense à un problème de placement du RelativeLayout, donc je regarde ça héhé !! :/ :/ Après ce sera juste parfait :P :P :P Lien vers le commentaire Partager sur d’autres sites More sharing options...
Nivek Posté(e) 8 juin 2010 Share Posté(e) 8 juin 2010 Il faut juste ajouter un android:gravity="bottom" sur ton menu2. Lien vers le commentaire Partager sur d’autres sites More sharing options...
vince123 Posté(e) 8 juin 2010 Auteur Share Posté(e) 8 juin 2010 android:gravity="bottom" euh, je suis pas sur (je veux dire que j'ai déjà essayé) ! j'ai essayé alignParentBottom et alignBottom, mais je vais y arriver ^^ ;) android:id="@+id/relative_menu" android:layout_width="fill_parent" android:layout_height="wrap_content" android:gravity="bottom"> edit : cela marche avec android:layout_gravity="bottom" ! alors quelle est la différence avec android:gravity="bottom" !? Lien vers le commentaire Partager sur d’autres sites More sharing options...
Nivek Posté(e) 8 juin 2010 Share Posté(e) 8 juin 2010 Ah, excuse moi, en vérifiant dans mon code ca serait plutôt : android:layout_gravity="bottom" cf. http://code.google.com/p/emailalbum/source/browse/EmailAlbumAndroid/trunk/res/layout/dialog_edit_caption.xml EDIT: oups, je viens de voir ton edit ;-) Je pense que le android:gravity donne une indication sur le gravity par défaut à l'intérieur de la vue qui porte l'attribut. Le layout_gravity indique le positionnement de la vue par rapport à son conteneur. ex. de Cyril Mottier : http://android.cyrilmottier.com/?cat=7 le android:gravity s'applique au texte à l'intérieur des textviews. Les TextViews elles-mêmes sont positionnées avec la gravity par défaut du FrameLayout, en haut à gauche. Lien vers le commentaire Partager sur d’autres sites More sharing options...
vince123 Posté(e) 8 juin 2010 Auteur Share Posté(e) 8 juin 2010 Ah, excuse moi, en vérifiant dans mon code ca serait plutôt : android:layout_gravity="bottom"cf. http://code.google.com/p/emailalbum/source/browse/EmailAlbumAndroid/trunk/res/layout/dialog_edit_caption.xml Ah ça non, j'accepte pas des excuses comme ça, non mais oh, on se croit où LA !!! :o :o :o :o Bref, un grand merci à tout ceux qui m'ont aidé :P :P Et une grande pensée à l'Android des montagnes (alias Nivek) pour m'avoir permis d'avancer sereinement :| Merci :D edit : Merci Nivek je viens de voir tes edits Lien vers le commentaire Partager sur d’autres sites More sharing options...
Recommended Posts
Archivé
Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.