初學android studio——如何通過編輯框(EditText)向另一個activity的文字框(TextView)傳送資訊
阿新 • • 發佈:2019-01-09
1.首先建立好兩個activity,取名分別為activity_main和 activity_display_message
PS:我這裡都是以basic activity和線性佈局(LinearLayout)為例
2.在在第一個activity的佈局檔案(content_main.xml)中建立一個編輯框(EditText)和一個按鈕(Button),並在按鈕中設定觸發事件sendMessage,程式碼如下:
<EditText android:id="@+id/edit_message1" android:hint="@string/edit_message1" android:layout_width="wrap_content" android:layout_height="wrap_content" /> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:onClick="sendMessage" android:text="傳送" />
PS: sendMessage是一個觸發事件,點選按鈕後觸發改方法。
3.在MainActivity.java下宣告一個sendMessage方法,程式碼如下:
public void sendMessage(View view) { Intent intent = new Intent(this,DisplayMessangeActivity.class); //宣告一個編輯框和佈局檔案中id為edit_message的編輯框連結起來。 EditText editText = (EditText) findViewById(R.id.edit_message1); //把編輯框獲取的文字賦值給String型別的message String message = editText.getText().toString(); //給message起一個名字,並傳給另一個activity intent.putExtra("EXTRA_MESSAGE",message); //啟動意圖 startActivity(intent); }
4.在我們建立的第二個Activity的佈局檔案(activity_display_message.xml)下建立一個文字框(TextView)並設定id,程式碼如下:
<TextView
android:id="@+id/RecMes"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>
PS:這個文字框是用於接收並顯示資訊的
5.開啟DisplayMessageActivity.java在onCreat方法中新增程式碼如下:
//關聯佈局檔案 setContentView(R.layout.activity_display_message); Intent intent = getIntent(); //把傳送進來的String型別的Message的值賦給新的變數message String message = intent.getStringExtra("EXTRA_MESSAGE"); //把佈局檔案中的文字框和textview連結起來 TextView textView = (TextView) findViewById(R.id.RecMes); //在textview中顯示出來message textView.setText(message);
6.這樣就實現了一個簡單的、線性佈局下的編輯框向文字框傳輸資料的簡單功能,程式碼的註釋大多是我自己的理解,如有錯誤望各位大佬給指出,初學者若有不懂的歡迎留言。下面給出模擬機實現效果。