2013-04-09 2 views
1

Я хочу изменить TextView к EditText и TextView к EditText, поэтому я решил использовать ViewSwitcher элемент на андроид, я читал об этом на android developer website.изменение EditText к TextView

Однако я до сих пор какой-то момент, что я не понимаю:

  1. Как я могу определить текущий переключатель? (Например, чтобы показать только EditText и невидим TextView)

Вот мой код:

<ViewSwitcher 
     xmlns:android="http://schemas.android.com/apk/res/android" 
     android:id="@+id/my_switcher" 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent" > 

     <TextView 
      android:id="@+id/clickable_text_view" 
      android:clickable="true" 
      android:onClick="TextViewClicked" 
      android:text="@string/some_value" /> 

     <EditText 
      android:id="@+id/hidden_edit_view" 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" 
      android:hint="@string/some_value" > 
     </EditText> 
    </ViewSwitcher> 

ответ

3

Вы усложняя довольно простой задачей. Поместите свои EditText и TextView в FrameLayout или RelativeLayout и просто сделайте setVisibility() на них, высвечивая их и показывая другим при необходимости.

+0

спасибо большое, это действительно помогает мне –

0

Используйте этот

<RelativeLayout 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/my_switcher" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" > 

<TextView 
     android:id="@+id/clickable_text_view" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:clickable="true" 
     android:onClick="TextViewClicked" 
     android:text="@string/some_value" 
     android:visibility="gone"/> 

<EditText 
     android:id="@+id/hidden_edit_view" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:hint="@string/some_value" > 
</EditText> 

И изменить видимость EditText или TextView из кода, всякий раз, когда вы хотите.

Примечание: по умолчанию TextView не видно.

Надеюсь, это поможет.

Смежные вопросы