2017-02-10 13 views
0

У меня есть этот виджет:Android: Следующая EditText фокус с различными видами не работает должным образом

<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:app="http://schemas.android.com/apk/res-auto" 
    android:id="@+id/root" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:background="@android:color/white" 
    android:foreground="?attr/selectableItemBackground"> 

    <LinearLayout 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_gravity="center_vertical" 
     android:orientation="horizontal" 
     android:padding="@dimen/keyline_1"> 

     <RelativeLayout 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:layout_gravity="center_vertical"> 

      <LinearLayout 
       android:id="@+id/title_layout" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:layout_alignParentLeft="true" 
       android:layout_centerVertical="true" 
       android:orientation="vertical"> 

       <TextView 
        android:id="@+id/title" 
        style="@style/WizardItemTitleView" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:maxLines="1" 
        android:singleLine="true"/> 

       <TextView 
        android:id="@+id/subtitle" 
        android:textColor="@color/amber_200" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:visibility="gone"/> 

      </LinearLayout> 

      <LinearLayout 
       android:id="@+id/info_layout" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:orientation="horizontal" 
       android:layout_toRightOf="@+id/title_layout" 
       android:layout_marginLeft="@dimen/keyline_1" 
       android:gravity="right" 
       android:focusable="true" 
       android:focusableInTouchMode="true" 
       android:layout_alignParentRight="true" 
       android:layout_centerVertical="true"> 

       <EditText 
        android:id="@+id/edit" 
        style="@style/WizardItemEditTextView" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:gravity="left" 
        android:maxLines="1" 
        android:singleLine="true"/>      

      </LinearLayout> 

     </RelativeLayout> 

    </LinearLayout> 

</FrameLayout> 

Это мой тест макет:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:app="http://schemas.android.com/apk/res-auto" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:orientation="vertical"> 

    <com.example.anthony.myapplication.wizard.ItemWizardEditTextView 
     android:id="@+id/name" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     app:title="NOM"/> 

    <com.example.anthony.myapplication.wizard.ItemWizardEditTextView 
     android:id="@+id/brand1" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     app:title="MARQUE 1"/> 

    <com.example.anthony.myapplication.wizard.ItemWizardEditTextView 
     android:id="@+id/brand2" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     app:title="MARQUE 2"/> 

    <com.example.anthony.myapplication.wizard.ItemWizardEditTextView 
     android:id="@+id/brand3" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     app:title="MARQUE 3"/> 

</LinearLayout> 

Так что, если я установить по умолчанию @ + ид/name edittext со значением по умолчанию, то следующее действие не может выполнить в моем следующем EditText. Я не знаю, где находится фокус.

Большое вам спасибо за помощь!

ответ

0

если вы хотите сосредоточиться на какой-либо из EditText использовать

<requestfocus /> 

и его хорошо использовать видимость programmaticaly