将EditText更改为TextView

时间:2013-04-09 13:42:29

标签: java android

我想将TextView更改为EditText,将TextView更改为EditText,因此我决定在android上使用ViewSwitcher元素,关于它android developer website

但是我还有一点我不理解:

  1. 如何确定当前的开关? (例如,仅显示EditText,并隐藏TextView
  2. 这是我的代码:

     <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>
    

2 个答案:

答案 0 :(得分:4)

你正在完成一项非常简单的任务。将您的EditTextTextView放入FrameLayoutRelativeLayout,然后只需setVisibility()隐藏一个,并在需要时显示另一个。

答案 1 :(得分: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>

并随时更改代码中EditTextTextView的可见性。

注意:默认情况下TextView不可见。

希望它有所帮助。