Le curseur n'est pas visible dans l'EditText lorsque la vue est ajouté dynamiquement
J'ai un TableLayout
et d'afficher dynamiquement est ajoutée dans la mise en page. Chaque fois que la disposition a un EditText
curseur n'est pas visible sur EditText
mais c'curseur est visible sur le dessus de la EditText
qui est TextView
.
J'ai ajouté onClick
cas, le fichier XML pour les deux Edittext
et Textview
et le fichier XML de la page principale.
Mon textview
auditeur:
textView.setOnTouchListener(new OnTouchListener() {
public boolean onTouch(View v, MotionEvent event) {
textView.setSelection(textView.getText().toString().length());
textView.requestFocus();
textView.requestFocusFromTouch();
textView.setCursorVisible(true);
return false;
}
});
Fichier XML:
<ScrollView
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_weight="1"
android:scrollbars="vertical" >
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<TextView
android:id="@+id/title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_margin="10dp"
android:focusable="true"
android:focusableInTouchMode="false"
android:text="@string/title_form_details"
android:textSize="25dp" />
<TableLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/fieldsContainer"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:scrollbars="vertical"
android:shrinkColumns="1"
android:stretchColumns="1" >
</TableLayout>
</LinearLayout>
</ScrollView>
TextView
Fichier XML:
<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/label"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical|left"
android:paddingBottom="0dp"
android:paddingLeft="5dp"
android:paddingRight="5dp"
android:paddingTop="5dp"
/>
EditText
Fichier XML:
<?xml version="1.0" encoding="utf-8"?>
<EditText xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/control"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:cursorVisible="true"
android:textColor="#000000"
android:textCursorDrawable="@null"
/>
Dynamiquement je suis ajoutant des TextView
et dans la ligne suivante, je suis en ajoutant Edittext
point de vue, mais à chaque fois que j'ai cliqué sur EditText
, le curseur est visible sur TextView
.
OriginalL'auteur Megha | 2013-09-06
Vous devez vous connecter pour publier un commentaire.
Vous la définition de la visibilité du curseur à textview, de Sorte qu'il est visible dans TextView
Supprimer cette ligne à partir de votre code
et essayer de régler les visiblity à edittext
OriginalL'auteur Kalai.G
J'ai eu cette solution a fonctionné pour moi.
OriginalL'auteur Megha
Essayer d'appeler setTextIsSelectable à l'intérieur de onTouchListener
OriginalL'auteur saurabh dixit
Supprimer cette ligne:
Alors il fonctionne.
OriginalL'auteur gbl
Essayez d'ajouter un < requestFocus /> dans ton edittext. Peut-être que cela fonctionne.
OriginalL'auteur silvia_aut
Ce bug est l'un de la plus farfelue à Android, je suppose...
Voici comment j'ai réussi:
Le helper:
OriginalL'auteur Martin Pfeffer