doublon possible: android-singleline-true-not-working-for-edittext
<EditText
android:id="@+id/searchbox"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:lines="1"
android:scrollHorizontally="true"
android:ellipsize="end"
android:layout_weight="1"
android:layout_marginTop="2dp"
android:drawablePadding="10dp"
android:background="@drawable/edittext"
android:drawableLeft="@drawable/folder_full"
android:drawableRight="@drawable/search"
android:paddingLeft="15dp"
android:hint="search...">
</EditText>
Je veux que ce qui précède EditText
n'ait qu'une seule ligne. Même si l'utilisateur appuie sur "Entrée", le curseur ne doit pas descendre jusqu'à la deuxième ligne. Quelqu'un peut-il m'aider à faire cela?
android
android-edittext
Pankaj Singhal
la source
la source
android:singleLine=true
android:singleLine=true
.android:inputType="textVisiblePassword"
résoudra le problèmeRéponses:
Utiliser
android:maxLines="1"
etandroid:inputType="text"
Vous avez oublié l' attribut android: maxLines . Et référez-vous à Android: inputType Avec votre exemple, ci-dessous donnera ce résultat:
la source
23.0.1
SDKL'utilisation
android:singleLine="true"
est déconseillée.Ajoutez simplement votre type d'entrée et définissez maxline sur 1 et tout fonctionnera bien
la source
android:inputType="number"
il y a déjà max 1 ligne.android:singleLine
est désormais obsolète. De la documentation :Vous pouvez donc simplement définir
android:inputType="textEmailSubject"
ou toute autre valeur correspondant au contenu du champ.la source
android:inputType="text"
.Vous devez ajouter cette ligne dans votre EditText en xml:
la source
maxLines
et eninputType
combinaisonAjoutez le code ci-dessus pour avoir une seule ligne dans la balise EditText dans votre mise en page.
la source
L'
android:singleLine
attribut est désormais obsolète. Veuillez ajouter ces attributs à votreEditText
pour qu'uneEditText
ligne soit unique.la source
J'ai fait cela dans le passé avec
android:singleLine="true"
puis en ajoutant un écouteur pour la touche "enter":la source
Cela fonctionnera pour le EditText:
Ensuite, je définirais une longueur maximale pour le texte d'entrée:
Ce sont les 2 qui sont nécessaires maintenant.
la source
Comprendre
android:singleLine="true"
la source
Tout le monde montre la méthode XML, sauf une personne qui a appelé la méthode setMaxLines d'EditText. Cependant, quand je l'ai fait, cela n'a pas fonctionné. Une chose qui a fonctionné pour moi a été de définir le type d'entrée.
Cela autorise AZ, az, 0-9 et les caractères spéciaux, mais ne permet pas d'appuyer sur Entrée. Lorsque vous appuyez sur Entrée, il ira au composant GUI suivant, le cas échéant dans votre application.
Vous pouvez également définir le nombre maximal de caractères pouvant être insérés dans cet EditText, sinon il poussera tout ce qui se trouve à sa droite hors de l'écran, ou commencera simplement à disparaître de l'écran lui-même. Vous pouvez faire ceci comme ceci:
Cela définit le nombre maximal de caractères à 8 dans ce EditText. J'espère que tout cela vous aidera.
la source
Programmairement:
la source
utilisation
la source
veuillez essayer ce code
la source
Le @Aleks G OnKeyListener () fonctionne très bien, mais je l'ai exécuté depuis MainActivity et j'ai donc dû le modifier légèrement:
J'espère que cela aidera quiconque essaie de faire de même.
la source
Afin de restreindre, il vous suffit de définir l'option de ligne unique sur "true".
la source
Il est également important de faire attention si la propriété android: inputType est textMultiLine . Si c'est le cas, les propriétés android: singleLine, android: imeOptions, android: ellipsize et android maxLines seront ignorées et votre EditText acceptera MultiLines de toute façon.
la source
Ajoutez cette ligne à votre edittext
android: inputType = "text"
la source
Comme
android:singleLine="true"
maintenant déprécié , utilisezandroid: maxLines = "1"
Utilisez plutôt maxLines pour modifier la présentation d'un texte statique et utilisez plutôt l'indicateur textMultiLine dans l'attribut inputType pour les vues de texte modifiables (si singleLine et inputType sont fournis, les indicateurs inputType remplaceront la valeur de singleLine).
la source
travaillé pour moi.
la source
Utilisez ci-dessous le code au lieu de votre code
la source
dans un fichier XML, ajoutez ces propriétés dans Modifier le texte
la source
Vous devez ajouter cette ligne dans votre EditText
et autre chose, n'oubliez pas de définir
android:inputType
(tout ce que vous voulez, texte, téléphone .., mais vous devez le définir)la source
Au fichier XML. Il suffit d'ajouter
android: maxLines = "1"
la source