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 :

[TextView] Problème de visibilité du texte en bas d'écran


Sujet :

Composants graphiques Android

  1. #1
    Membre habitué Avatar de JQueen
    Inscrit en
    Octobre 2008
    Messages
    214
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations forums :
    Inscription : Octobre 2008
    Messages : 214
    Points : 126
    Points
    126
    Par défaut [TextView] Problème de visibilité du texte en bas d'écran
    Bonjour,
    comme décrit dans la discussion suivante : http://www.developpez.net/forums/d12...ication-style/, mon activité principale affiche huit TextViex dont quatre sont des paragraphes. Mon problème est que le dernier paragraphe n'est pas visible en bas de l'écran. En essayant de monter/descendre sur l'écran, rien n'est possible !!! Pourquoi ?!! est-ce que c'est un défaut dû à l'émulateur ? Est-ce que je dois insérer mes textes dans une list (ListView) ?

    Merci pour toutes proposition

  2. #2
    Expert éminent

    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Février 2007
    Messages
    4 253
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2007
    Messages : 4 253
    Points : 7 618
    Points
    7 618
    Billets dans le blog
    3
    Par défaut
    Un simple ScrollView peut faire l'affaire .... pour permettre justement de scroller
    N'oubliez pas de cliquer sur mais aussi sur si un commentaire vous a été utile !
    Et surtout

  3. #3
    Membre habitué Avatar de JQueen
    Inscrit en
    Octobre 2008
    Messages
    214
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations forums :
    Inscription : Octobre 2008
    Messages : 214
    Points : 126
    Points
    126
    Par défaut
    Merci pour la réponse.
    En fait, j'ai pensé à cette classe et j'ai essayé de l'utiliser. Voilà le code écrit au sein de la méthode onCreate() de l'activité principale:
    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
    public class AcceuilActivity extends Activity {
    
        LinearLayout mainLayout;
        ScrollView scvMain;
    	
    	@Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.acceuil);
            
            mainLayout = (LinearLayout) findViewById(R.id.mainlayout);
            scvMain = new ScrollView(this);
            scvMain.setBackgroundColor(0xFFCFDBEC);
            mainLayout.addView(scvMain, new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT, 
            		LinearLayout.LayoutParams.MATCH_PARENT));
        }
    
        @Override
        public boolean onCreateOptionsMenu(Menu menu) {
            // Inflate the menu; this adds items to the action bar if it is present.
            getMenuInflater().inflate(R.menu.acceuil, menu);
            return true;
        }
        
    }
    Rien n'a changé comme si j'ai rien fait, des remarques ?

  4. #4
    Membre habitué Avatar de JQueen
    Inscrit en
    Octobre 2008
    Messages
    214
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations forums :
    Inscription : Octobre 2008
    Messages : 214
    Points : 126
    Points
    126
    Par défaut
    Salut,

    Je viens de modifier le fichier XML au lieu de modifier le code java :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    <ScrollView >
               <LinearLayout>
                       tous les TextView
               </LinearLayout>
    </ScrollView >
    ça a bien fonctionné. Pourquoi ça n'a pas marché en manipulant du code java ?!!!
    Merci

  5. #5
    Expert éminent

    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Février 2007
    Messages
    4 253
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2007
    Messages : 4 253
    Points : 7 618
    Points
    7 618
    Billets dans le blog
    3
    Par défaut
    parceque tu as rajouté un scroll view ne contenant rien (donc vide) au linear layout initial (donc inchangé)

    Non, mais il ne faut jamais créer les views à la main... c'est mal
    N'oubliez pas de cliquer sur mais aussi sur si un commentaire vous a été utile !
    Et surtout

  6. #6
    Membre habitué Avatar de JQueen
    Inscrit en
    Octobre 2008
    Messages
    214
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations forums :
    Inscription : Octobre 2008
    Messages : 214
    Points : 126
    Points
    126
    Par défaut
    Bonjour,
    Merci pour toutes vos remarques
    parceque tu as rajouté un scroll view ne contenant rien (donc vide) au linear layout initial (donc inchangé)
    Comment corriger le code alors ?

    Non, mais il ne faut jamais créer les views à la main... c'est mal
    Vous voulez dire qu'il faut les créer dans le fichier XML ou bien c'est le contraire ?!!!

    En fait, je travaille suivant le principe suivant : tout ce qui est UI (views), je le crée dans le fichier XML, puis tous les traitements je les manipule dans le fichier java (séparation UI et traitement), qu'est-ce que vous en dites ?

  7. #7
    Expert éminent

    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Février 2007
    Messages
    4 253
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2007
    Messages : 4 253
    Points : 7 618
    Points
    7 618
    Billets dans le blog
    3
    Par défaut
    Oui, c'est ca....

    Le fait que les textview soient scrollable n'a rien à faire dans le code, il doit donc rester coté layout XML....
    N'oubliez pas de cliquer sur mais aussi sur si un commentaire vous a été utile !
    Et surtout

  8. #8
    Membre habitué Avatar de JQueen
    Inscrit en
    Octobre 2008
    Messages
    214
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations forums :
    Inscription : Octobre 2008
    Messages : 214
    Points : 126
    Points
    126
    Par défaut
    Salut,
    je viens de tester ma ScrollView et malheureusement elle ne fonctionne pas correctement, elle n'affiche pas tout, c'est-à-dire seulement une partie de l'écran bouge. Pourquoi ?!!!
    Voilà le fichier acceuil.xml :
    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
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    <?xml version="1.0" encoding="utf-8"?>
    <ScrollView  xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="match_parent"
        android:layout_height="match_parent" >
    
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        android:orientation="vertical"
        style="@style/layoutStyle"
        android:id="@+id/mainlayout"
        tools:context=".AcceuilActivity" >
        
        <TextView
            	android:layout_width="fill_parent"
            	android:layout_height="wrap_content"
            	android:text="@string/Tests"
            	style="@style/tabStyle"
            	        	/>    
        
        <TextView 
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:paddingBottom="20dp"
            android:text="@string/test" />
        
        <TextView
            	android:layout_width="fill_parent"
            	android:layout_height="wrap_content"
            	android:text="@string/Profils"
            	style="@style/tabStyle"
        />    
        
        <TextView 
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:paddingBottom="20dp"
            android:text="@string/profil" />
        
        <TextView
            	android:layout_width="fill_parent"
            	android:layout_height="wrap_content"
            	android:text="@string/Statistiques"
            	style="@style/tabStyle"
        />    
        
        <TextView 
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:paddingBottom="20dp"
            android:text="@string/stats" />
        
        <TextView
            	android:layout_width="fill_parent"
            	android:layout_height="wrap_content"
            	android:text="@string/Parametres"
            	style="@style/tabStyle"
            	/>    
        <TextView 
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/params" />
           
    
    </LinearLayout>
    </ScrollView>
    le fichier styles.xml :
    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
    <style name="tabStyle" >
            <item name="android:textColor">@color/cafe</item>
            <item name="android:textSize">@dimen/titleSize</item>
            <item name="android:textStyle">bold</item>
            <item name="android:drawableLeft">@drawable/parametres</item>
            <item name="android:background">@color/caca_oie</item>
            <item name="android:paddingLeft">@dimen/paddingleft</item>
            <item name="android:drawablePadding">@dimen/paddingleft</item>
        </style>
        
        <style name="layoutStyle">
            <item name="android:layout_marginLeft">@dimen/layoutMarginLeftRight</item>
            <item name="android:layout_marginRight">@dimen/layoutMarginLeftRight</item>
            <item name="android:layout_marginTop">@dimen/layoutmargintop</item>
            <item name="android:layout_marginBottom">@dimen/layoutmarginbottom</item> 
            <item name="android:layout_height">match_parent</item>
            <item name="android:layout_width">fill_parent</item>         
        </style>
    J'attend vos remarques

  9. #9
    Expert éminent

    Avatar de Feanorin
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    4 589
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 4 589
    Points : 9 149
    Points
    9 149
    Par défaut
    Bonjour,

    c'est-à-dire seulement une partie de l'écran bouge.
    Tu pourrais nous montrer un exemple visuel ?

    Merci
    Responsable Android de Developpez.com (Twitter et Facebook)
    Besoin d"un article/tutoriel/cours sur Android, consulter la page cours
    N'hésitez pas à consulter la FAQ Android et à poser vos questions sur les forums d'entraide mobile d'Android.

  10. #10
    Membre habitué Avatar de JQueen
    Inscrit en
    Octobre 2008
    Messages
    214
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations forums :
    Inscription : Octobre 2008
    Messages : 214
    Points : 126
    Points
    126
    Par défaut
    Bonjour,

    Merci pour la réponse

    L'écran initial et l'écran après scroll max sont montrés dans les fichiers ci-joints.
    Images attachées Images attachées   

  11. #11
    Expert éminent

    Avatar de Feanorin
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    4 589
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 4 589
    Points : 9 149
    Points
    9 149
    Par défaut
    Elle affiche bien tout non, on voit bien le texte de la section Paramètre affichée.

    Ou est ce qu'il manque encore un bout de texte ?
    Responsable Android de Developpez.com (Twitter et Facebook)
    Besoin d"un article/tutoriel/cours sur Android, consulter la page cours
    N'hésitez pas à consulter la FAQ Android et à poser vos questions sur les forums d'entraide mobile d'Android.

  12. #12
    Membre habitué Avatar de JQueen
    Inscrit en
    Octobre 2008
    Messages
    214
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations forums :
    Inscription : Octobre 2008
    Messages : 214
    Points : 126
    Points
    126
    Par défaut
    Bonjour,
    Non, on ne voit pas tout le texte, il manque toute une ligne. Voilà deux autres images ci-jointes qui montre bien le problème. Quoi que ce soit la longueur du dernier texte, il manque toujours une ligne après le scroll. Pourquoi ?!! j'ai fait des recherches mais en vain
    Images attachées Images attachées   

  13. #13
    Expert éminent

    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Février 2007
    Messages
    4 253
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2007
    Messages : 4 253
    Points : 7 618
    Points
    7 618
    Billets dans le blog
    3
    Par défaut
    Essayes sans les styles....
    (je te conseille d'ailleurs de ne jamais mettre les attributs "android:layout_xxxxx" dans un style, pour une bonne raison, ils sont attachés au layout parent, et non à l'objet stylisé: par exemple, layout_

    Ensuite remet les styles un à un.
    N'oubliez pas de cliquer sur mais aussi sur si un commentaire vous a été utile !
    Et surtout

  14. #14
    Membre habitué Avatar de JQueen
    Inscrit en
    Octobre 2008
    Messages
    214
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations forums :
    Inscription : Octobre 2008
    Messages : 214
    Points : 126
    Points
    126
    Par défaut
    Bonjour,
    Merci pour votre réponse.
    (je te conseille d'ailleurs de ne jamais mettre les attributs "android:layout_xxxxx" dans un style, pour une bonne raison, ils sont attachés au layout parent, et non à l'objet stylisé: par exemple, layout_
    Votre remarque sur le layout parent m'a donné des idées. Après avoir fait des tests, voilà la cause de mon problème, ce sont les deux lignes de code suivantes :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    android:layout_marginTop="@dimen/layoutmargintop" 
    android:layout_marginBottom="@dimen/layoutmarginbottom"
    En mettant ces deux lignes dans le style du Layout (LinearLayout), le dernier texte sera affiché en partie. Si je les définis comme style de la ScrollView, tout s'affiche correctement.

    Le code correct est :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    <ScrollView  xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="@dimen/layoutmargintop" 
        android:layout_marginBottom="@dimen/layoutmarginbottom"   
        >
    
    	<LinearLayout         xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        style="@style/layoutStyle"
        android:orientation="vertical"
        android:id="@+id/mainlayout"
        tools:context=".AcceuilActivity" >
    Merci pour votre aide

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [JTabbedPane] afficher texte étiquette bas en haut.
    Par spoutyoyo dans le forum Agents de placement/Fenêtres
    Réponses: 11
    Dernier message: 07/07/2009, 17h46
  2. [MFC]Problèmes pour orienter du texte
    Par Deedier dans le forum MFC
    Réponses: 1
    Dernier message: 25/03/2005, 16h15
  3. Problème champs de type texte.
    Par Le-Cortex dans le forum Access
    Réponses: 7
    Dernier message: 06/01/2005, 14h42
  4. Problème de récupération de texte de formulaire
    Par bigourson dans le forum Langage
    Réponses: 4
    Dernier message: 15/09/2004, 16h27
  5. problème de passage de texte avec getvariable
    Par VincentB dans le forum Flash
    Réponses: 2
    Dernier message: 12/01/2004, 18h35

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