web-dev-qa-db-ja.com

EditText vs TextView

APIを読んで、TextViewEditTextのスーパークラスであることがわかりますが、短く簡単な質問があります。一般的に、表示されるテキストが変更される場合はEditText 、ユーザーからのものかアプリからのものか。 TextViewは、表示されるテキストを一定/永久に同じにする場合に使用されます。これは正しいです?

25
user2927724

以前にJavaプロジェクトを実行したことがある場合、TextviewおよびEditTextJLabelおよびJtextFieldと同じです。ユーザーにユーザー名の入力を要求する場合は、TextViewを設定します(JLabelの場合と同じように、その中に「username」テキストを設定します)。 EditText。EditTextは、ユーザーがプログラムに入力する場所です。

ユーザーはTextViewで何かを変更することはできませんが、プログラムはできます(ユーザーが正しいユーザー名を入力した後、プログラムコードで記述する必要がある場合は、「詳細が正しい」と言ってプログラムによって別のTextViewのテキストを設定できます。ユーザーはできません。表示させる)。ユーザーは任意のユーザー名を入力できますが、「username」テキストフィールドまたはTextViewは、通常のログインインターフェイスと同様に「username」として変更されません。

10
SMK

EditTextはユーザー入力に使用されます。

TextViewはテキストを表示するために使用され、ユーザーは編集できません。 TextViewはいつでもプログラムで更新できます。

14
Garret

それらの名前はかなり自明です。 TextViewは、ユーザーがテキスト(ラベルなど)を表示するときに使用されるウィジェットと、ユーザーがテキストを編集できるようにするときに使用されるEditTextです。いずれかのウィジェットのテキストは、プログラムで設定するか、Android:textパラメータ。

documentation は大体それを要約しています:

EditText is a thin veneer over TextView that configures itself to be editable.

2
ajacian81

EditTextは、ユーザーからの入力を期待するときに使用されます。 EditTextは、ユーザー入力(キーボードの表示、貼り付け、位置インジケーターなど)の動作を提供します。

アプリが表示するコンテンツを変更している場合、TextViewのテキストをリセットできます。しかし、ユーザーはそれを台無しにすることはできません。

1
Eduardo Bonet

EditTextは、テキストを入力するための入力タイプ/フィールドです

TextViewはテキストを表示するためのTextFieldです

0

TextViewはHTMLのLabelタグに似ていますが、Edittextは入力タイプです。

TextViewは、ユーザーが簡単に変更することはできません。ユーザーは値のみを入力します。

0
Ssingh