/ / Le contenu est éteint dans android - android, android-layout

Le contenu est éteint dans android - android, android-layout

J'ai 3 éléments dans un LinearLayout qui doivent tenir sur l'écran, mais ce n'est pas le cas actuellement.

Voici ce que je veux qu'il ressemble

TextView -- TextView -- EditText

Cependant le 2ème TextView est assez long et il pousse le EditText hors de l'écran

Alors ça finit par ressembler à ça

TextView --- (fin de l'écran) | TextView -------- | (fin de l'écran) EditText

J'ai "regardé autour pendant un moment et je ne peux pas" semblerpour trouver une solution à ce qui devrait être une solution facile. S'il s'agit d'une copie, n'hésitez pas à me lier à la question avec la réponse appropriée car je ne pouvais pas la trouver par moi-même.

Voici le code, merci pour l'aide

<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="center"
android:orientation="vertical" >

<LinearLayout
android:id="@+id/iline_layout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:background="@color/white"
android:gravity="center"
android:orientation="vertical" >

<LinearLayout
android:id="@+id/ll3"
android:layout_width="wrap_content"
android:layout_height="0dp"
android:layout_weight="1"
android:gravity="center"
android:orientation="horizontal" >

<TextView
android:id="@+id/textView5"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/b"
android:textAppearance="?android:attr/textAppearanceMedium" />

<TextView
android:id="@+id/textView6"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/distance_edge"
android:textAppearance="?android:attr/textAppearanceMedium" />

<EditText
android:id="@+id/editText2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:ems="4" />
</LinearLayout>
</LinearLayout>
</ScrollView>

En fin de compte je voudrais la 2e TextView prendre le même espace de 33% de la largeur que les autres et juste envelopper le texte autant de fois que nécessaire pour le faire

modifier

La première vue textuelle n’est qu’une lettre B) et j’ai donc dû définir le contenu du wrap pour que les autres fonctionnent correctement

Voici le code

<LinearLayout
android:id="@+id/ll3"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="center"
android:orientation="horizontal" >

<TextView
android:id="@+id/textView5"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/b"
android:textAppearance="?android:attr/textAppearanceMedium" />

<TextView
android:id="@+id/textView6"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="@string/distance_edge"
android:textAppearance="?android:attr/textAppearanceMedium" />

<EditText
android:id="@+id/editText2"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:ems="4" />
</LinearLayout>

Réponses:

2 pour la réponse № 1

Maintenant, c’est correct, c’est vrai, j’ai vérifié dans IDE.

<?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"
android:layout_gravity="center"
android:orientation="vertical" >

<LinearLayout
android:id="@+id/iline_layout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:background="@color/white"
android:orientation="vertical" >

<LinearLayout
android:id="@+id/ll3"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal"
android:layout_gravity="center" >

<TextView
android:id="@+id/textView5"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="some long, long, long text"
android:textAppearance="?android:attr/textAppearanceMedium" />

<TextView
android:id="@+id/textView6"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="some long, long, long, long, long, long, long, long, long text"
android:textAppearance="?android:attr/textAppearanceMedium" />

<EditText
android:id="@+id/editText2"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:ems="4" />
</LinearLayout>
</LinearLayout>
</ScrollView>

Écran


2 pour la réponse № 2
<LinearLayout
android:id="@+id/ll3"
android:layout_width="wrap_content"
android:layout_height="0dp"
android:layout_weight="1"
android:weightSum="3"
android:gravity="center"
android:orientation="horizontal" >

<TextView
android:id="@+id/textView5"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="@string/b"
android:textAppearance="?android:attr/textAppearanceMedium" />

<TextView
android:id="@+id/textView6"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="@string/distance_edge"
android:textAppearance="?android:attr/textAppearanceMedium" />

<EditText
android:id="@+id/editText2"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:ems="4" />
</LinearLayout>

1 pour la réponse № 3

Essayez de définir des attributs de pondération pour vos vues de texte et de modifier du texte. La sortie peut sembler un peu délicate en fonction de ce que sont vos chaînes et de la manière dont elles s’enroulent.

<LinearLayout
android:id="@+id/ll3"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:orientation="horizontal" >

<TextView
android:id="@+id/textView5"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="0.33"
android:text="Some string"
android:textAppearance="?android:attr/textAppearanceMedium" />

<TextView
android:id="@+id/textView6"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="0.33"
android:text="some really, really, really, long string"
android:textAppearance="?android:attr/textAppearanceMedium" />

<EditText
android:id="@+id/editText2"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="0.33"
android:ems="4" />
</LinearLayout>