我阅读了API并看到TextView
是EditText
的超类,但我有一个简短的问题:一般来说,EditText
用于显示的文本可能会发生变化,无论是来自用户还是应用程序。当显示的文本永远不变/相同时,使用TextView
。这是对的吗?
答案 0 :(得分:13)
EditText用于用户输入。
TextView用于显示文本,用户无法编辑。 TextView可以随时以编程方式更新。
答案 1 :(得分:10)
如果您之前已经完成了任何Java项目,我会看到Textview
和EditText
与JLabel
和JtextField
相同。如果您想要求用户输入用户名,您将设置一个TextView("用户名"文本,就像您对JLabel一样)。然后,您会显示一个文本框,供用户输入文本框为EditText
的用户名。 EditText是用户为程序提供输入的地方。
用户无法在TextView中更改内容但程序可以(在用户输入正确的用户名后,您可以通过程序设置另一个TextView的文本,说明"详细信息正确"如果您希望必须将其写入您的程序代码。用户无法使其显示)。用户可以输入任何用户名,但是"用户名" textfield或TextView
将保持不变,因为"用户名"就像在普通的登录界面中一样。
答案 2 :(得分:2)
他们的名字非常自我解释。 TextView是当您希望用户查看文本(例如标签等)时使用的窗口小部件,以及当您希望用户能够编辑文本时使用的EditText。可以使用android:text
参数以编程方式或通过xml设置任一窗口小部件中的文本。
documentation几乎可以总结一下:
EditText is a thin veneer over TextView that configures itself to be editable.
答案 3 :(得分:1)
当您期望来自用户的输入时,将使用EditText。 EditText提供用户输入的行为(显示键盘,粘贴,位置指示器等)。
如果您的应用正在更改要显示的内容,则只需重置TextView的文本即可。然而,用户不能搞砸它。
答案 4 :(得分:0)
另一方面,TextView就像HTML的Label标签一样,Edittext是输入类型。
简单说明TextView是用户无法改变的。用户只输入值。
答案 5 :(得分:0)
EditText 是用于输入文字的输入类型/字段
TextView 是用于显示文字的TextField