Sto riscontrando qualche problema con la messa a fuoco del controllo. La mia definizione di interfaccia sotto ha:requestFocus skipping next EditText
fonte (RadioGroup/opzionale) destinazione (EditText) quantità (EditText) trasferimento (Button)
sto cambiando la visibilità della "fonte" nel mio codice. Quando non lo visualizzo, la messa a fuoco passa automaticamente alla "quantità" che invece mi aspetterei da "destinazione". Non so cosa mi sfugge. Sospetto che potrebbe trattarsi di un bug di Android, non lo so. Qualcuno sa come risolvere questo?
Grazie
<?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">
<RadioGroup android:id="@+id/source"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:visibility="gone">
<RadioButton android:id="@+id/default"
android:checked="false"
android:text="@string/default"/>
</RadioGroup>
<TableLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:stretchColumns="1">
<TableRow>
<TextView
android:text="@string/destination"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="16sp"
android:textColor="#ffffff"
android:paddingRight="10sp"
android:layout_weight="1"/>
<EditText android:id="@+id/destination"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:singleLine="true"><requestFocus/></EditText>
</TableRow>
<TableRow>
<TextView
android:text="@string/quantity"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="16sp"
android:textColor="#ffffff"
android:paddingRight="10sp"
android:layout_weight="1"/>
<EditText android:id="@+id/quantity"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:singleLine="true"/>
</TableRow>
</TableLayout>
<Button android:id="@+id/transfer"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/transfer"/>
</LinearLayout>
Sto testando questo su Android 2.2 e non posso riprodurre, l'attenzione è su Destinazione all'inizio. Se continui ad avere problemi ti consiglio di aggiungere 'EditText e = (EditText) findViewById (R.id.destination); e.requestFocus(); 'nel tuo metodo' onResume'. –
Grazie per la risposta. Sì, ma sto testando su Android 2.1. requestFocus() non ha potuto risolvere il problema. – pocoa
Vedere la mia risposta nell'argomento: http://stackoverflow.com/a/13194129/348192 – iBog