簡體   English   中英

Android獲取在EditText中鍵入的文本

[英]Android get text typed in EditText

我有一個editText,如何獲取用戶鍵入的文本?

例如,這是我的editText

<EditText
   android:id="@+id/editText3"
   android:layout_width="match_parent"
   android:layout_height="wrap_content" 
   android:maxLength="10">
</EditText>

並且用戶鍵入了Hi,在我的下一個活動中如何顯示?如果用戶鍵入了Hi,則在下一個活動Hello中顯示。

我要用什么? 和數據庫有關嗎?

首先,在當前活動(即視圖中托管EditText組件的活動)中拾取文本。

EditText txt = (EditText)findViewById(R.id.editText3);
String input = txt.getText().toString();

現在,將其添加為額外數據並調用您的新活動。

Intent i = new Intent(getApplicationContext(), NewActivity.class);
i.putExtra("input",input);
startActivity(i);

NewActivity onCreate()里面:

Intent i = getIntent();
String input = i.getStringExtra("input");

瞧,您在新活動中輸入了文本。

要將其設置為新的TextView

TextView txtView = (TextView)findViewById(R.id.yourTextView);
txtView.setText(input);

最簡單的方法是使用IntentgetExtra()putExtra()方法,進行簡單的String比較並返回結果。

以下是一些入門指南: 如何從Android上的Intent中獲取更多數據? 以及如何比較Java中的字符串?

但是從您所寫的內容來看,您似乎正在嘗試創建一個聊天應用程序,其中您的應用程序響應用戶鍵入的消息。 為此,我建議您使用AIML 這是一個很長的遠景,但值得。

假設您的班級名稱是: Main

首先聲明一個靜態public String:

public static String myText;

現在,在您的OnCreate方法中鍵入:

EditText et = (EditText) findViewById(R.id.editText3);

最后,在您的OnClick方法中輸入:

myText = getText().toString();
Intent x = new Intent(getApplicationContext(), NewActivity.class);
startActivity(x);

現在,在下一個活動中,您只能使用來訪問字符串:

Main.myText

舉個例子:

TextView txt =(TextView) findViewById(R.id.textviewid);
txt.setText(Main.myText);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM