如何通过单击按钮使 TextView 可编辑?

Sum*_*rni 0 android view android-widget android-layout android-xml

我有一个应用程序,可以显示数据库中的某些内容并允许用户对其进行编辑。我有一个活动在一些文本视图中显示这些详细信息。现在,屏幕底部有一个“编辑”按钮。单击此按钮时,我想让文本视图可编辑(最初是只读的),以便可以更新数据库。另外,我希望“编辑”按钮变成“保存”按钮。我知道我可以使用另一个活动来实现此目的,但是有什么方法可以在同一个活动中执行此操作吗?

Ell*_*ltz 5

EditText是一个TextView,它能做的TextView可以做得更好

所以假设你有一个TextView

 <TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"        
    android:text="i am a text"
    android:textColor="#243b03" />
Run Code Online (Sandbox Code Playgroud)

并且您希望通过单击按钮即可对其进行编辑;在你的 onclick 中添加这个

   TextView.setCursorVisible(true);
   TextView.setFocusableInTouchMode(true);
   TextView.setInputType(InputType.TYPE_CLASS_TEXT);
   TextView.requestFocus(); //to trigger the soft input
Run Code Online (Sandbox Code Playgroud)

它们不是静态的,但我将其设为静态,以便您知道哪些视图对象的方法是这些方法。关于您的按钮,在输入文本后,您将文本更改为“完成”或其他内容,Button扩展自TextView因此将其视为研究TextWatcher