Cómo convertir TextView a EditText en android?

Quiero convertir TextView en Editar texto y viceversa en un evento de clic de botón en android. No sé cómo lograrlo, por favor ayuda si alguien conoce la solución.

Recuerdos, Rajapandian.K

Mejor utilizar un ViewSwitcher

... <ViewSwitcher xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/my_switcher" android:layout_width="match_parent" android:layout_height="match_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="match_parent" android:layout_height="wrap_content" android:hint="@string/some_value" /> </ViewSwitcher> ... 

A continuación, puede cambiar las vistas

 public void TextViewClicked() { ViewSwitcher switcher = (ViewSwitcher) findViewById(R.id.my_switcher); switcher.showNext(); //or switcher.showPrevious(); TextView myTV = (TextView) switcher.findViewById(R.id.clickable_text_view); myTV.setText("value"); } 

Tal vez usted puede tener uno de cada uno y cambiar su visibilidad. Cuando haga clic en el botón, tome el texto del visible, aplíquelo al invisible y luego cambie su visibilidad.

Usted puede tener tanto en su diseño y en todo momento tienen sólo uno de ellos se muestra. Cuando cambia el valor de EditText, actualice el TextView oculto para mantenerlos sincronizados.

Nunca lo intenté pero usted puede (probablemente) utilizar EditText y fijar el fondo a eso de TextView. A onfocus cambio de onfocus simplemente puede intercambiar fondos basados ​​en lo que desea ver en cualquier momento. Trataré de implementarlo y veré si funcionará

Lo que mejor creo es usar el concepto de Framelayout.

Tal que el diseño original parece

 <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content"> . . . </Linearlayout> 

Colócalo en el interior de Framelayout así.

 <FrameLayout android:layout_width="match_parent" android:layout_height="wrap_content"> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content"> . . . </Linearlayout> <!-- The Magic is here --> <View android:layout_width="match_parent" android:layout_height="match_parent" /> </FrameLayout> 

Aquí el LinearLayout mantendrá toda su vista EditText. También recuerda hacer que el fondo de EditText View null.

Me gusta esto

 <EditText android:layout_width="fill_parent" android:layout_height="50dp" android:id="@+id/editInp" android:hint="@string/hello_world" android:background="@null" android:singleLine="true" android:inputType="textCapWords"/> 

o

 <EditText android:layout_width="fill_parent" android:layout_height="50dp" android:id="@+id/editInp" android:hint="@string/hello_world" android:background="@android:drawable/transparent" android:singleLine="true" android:inputType="textCapWords"/> 
FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.