IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Composants graphiques Android Discussion :

LinearLayout,Scroll uniquement sur une webView au lieu de tout le layout


Sujet :

Composants graphiques Android

  1. #1
    Invité
    Invité(e)
    Par défaut LinearLayout,Scroll uniquement sur une webView au lieu de tout le layout
    J'affiche une webview dans une appli android (enfin plusieurs avec un flipper pour passer de l'une à l'autre), et j'aimerais mettre un bouton au-dessus et un bouton au dessous j'ai donc créer le xml suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    <?xml version="1.0" encoding="utf-8"?>  
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"  
        android:orientation="vertical"  
        android:layout_width="fill_parent"  
        android:layout_height="fill_parent"  
        >  
        <Button 
        	android:layout_width="wrap_content"
        	android:layout_height="wrap_content"
        	android:text="Pont supérieur"
        	android:id="@+id/pontsup"/>
        <ViewFlipper 
    		android:layout_width="fill_parent"
    		android:layout_height="wrap_content"
    		android:id="@+id/flipper">
        <WebView android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:id="@+id/webview1"
        android:clickable="true"/>
        <WebView android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:id="@+id/webview2"
        android:clickable="true"/>
        <WebView android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:id="@+id/webview3"/>
        </ViewFlipper>
         <Button 
        	android:layout_width="wrap_content"
        	android:layout_height="wrap_content"
        	android:text="Pont  inférieur"
        	android:id="@+id/pontinf"/>
    </LinearLayout>
    Lorsque je lance l'appli, je vois bien les deux boutons l'un en dessous de l'autre, et la webview commence à se charger au milieu des deux. Mais une fois la webview complétement chargé, mon bouton inférieur n'est pas visible à l'écran, et quand je scroll vers le bas pour le voir je ne peux pas.
    Ce qu'il se passe c'est que je scroll seulement la webview, du coup je ne "descend" pas mon écran jusqu'à mon bouton, je ne le vois donc pas.

    Faut-il que je gére cette erreur dans ma page html (la redimensionner peut-être?) ou est-il possible de la redimensionner directement dans le main.xml? existe-t-il une autre solution? Est-il possible de faire en sorte que je scroll toute la fenêtre et pas uniquement la webview?

    Sinon je mettrai les deux boutons au-dessus, mais je trouve celà moins bien. De plus j'aurais aimé pouvoir scroller sur tout mon main et pas uniquement la webview.

    Utiliser une scrollView est-il une bonne idée?
    J'ai essayé cette solution en mettant mes boutons, et mon flipper dans une scrollView de ce type :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    <ScrollView android:id="@+id/ScrollView01"
    	android:layout_width="fill_parent"
    	android:layout_height="1000px">
    <LinearLayout android:id="@+id/LinearLayout02"
    	android:layout_width="wrap_content"
    	android:layout_height="900px"
    	android:orientation="vertical"> 
    .... (code) ....
    Mes deux boutons s'affichent, mais pas la webview.

  2. #2
    Invité
    Invité(e)
    Par défaut
    J'ai trouvé une solution alternative pour afficher mes deux boutons ... mais le scroll se fait toujours uniquement sur la webview :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"  
        android:orientation="vertical"  
        android:layout_width="fill_parent"  
        android:layout_height="fill_parent"  
        >  
         <Button 
        	android:layout_width="wrap_content"
        	android:layout_height="wrap_content"
        	android:text="Pont supérieur"
        	android:id="@+id/pts4"/>
      <ScrollView android:id="@+id/ScrollView01"
    	android:layout_width="fill_parent"
    	android:layout_height="810px">
     
        <ViewFlipper 
    		android:layout_width="fill_parent"
    		android:layout_height="wrap_content"
    		android:id="@+id/flipper">
        <WebView android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:id="@+id/webview1"
        android:clickable="true"/>
        <WebView android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:id="@+id/webview2"
        android:clickable="true"/>
        <WebView android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:id="@+id/webview3"/>
        </ViewFlipper>
        </ScrollView>
        <Button 
        	android:layout_width="wrap_content"
        	android:layout_height="wrap_content"
        	android:text="Pont inférieur"
        	android:id="@+id/pti4"/>
    </LinearLayout>
    je vais bosser sur ça pour le moment, mais je devrais changer la taille de mon scrollView en fonction de chacun taille d'écran d'Android avec cette solution. Donc si quelqu'un a une meilleure idée je veux bien quelques conseils =)


    ---EDIT---
    sinon une autre solution consiste à ne pas utiliser la scrollview, mais à mettre les boutons dans des relative layout qui les positionne tous le temps en haut et en bas de l'écran. Ok pour le bouton du haut, mais le bouton du bas se retrouve sur la webview ce qui n'est pas trés pratique parfois. Le scroll se fait cependant toujours sur la webview uniquement, mais au moins on voit les 2 boutons.
    Dernière modification par Invité ; 06/07/2011 à 12h19.

Discussions similaires

  1. GetDC sur une image au lieu de l'écran
    Par k_meleon dans le forum VBA Access
    Réponses: 0
    Dernier message: 01/04/2008, 18h23
  2. Réponses: 1
    Dernier message: 27/09/2007, 20h36
  3. scroll uniquement sur un div
    Par Overstone dans le forum Mise en page CSS
    Réponses: 4
    Dernier message: 13/08/2007, 10h28
  4. [TopCased] contrainte {unique} sur une composition
    Par big x dans le forum Diagrammes de Classes
    Réponses: 3
    Dernier message: 03/07/2007, 14h04
  5. JScrollPane : scroll que sur une partie du tableau
    Par mickael.guilbert dans le forum AWT/Swing
    Réponses: 6
    Dernier message: 21/08/2006, 08h53

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo