簡體   English   中英

在活動之間傳遞帶有意圖的文本

[英]Passing text between activities with an Intent

我很難在活動之間傳遞意圖的附加內容。 我是android的初學者,即使這個小東西也確實困擾我。

我試圖在按下按鈕時將輸入MyActivity.java中EditText中的信息傳遞給DisplayMessageActivity.java中TextView。

這是MyActivity.java代碼:

public class MyActivity extends Activity {
public final static String EXTRA_MESSAGE = "myfirstapp.example.com.myapplication.MESSAGE";

public void sendMessage(View view) {
    Intent message_send = new Intent(this, DisplayMessageActivity.class);
    EditText edit_message = (EditText) findViewById(R.id.edit_message);
    String message = edit_message.getText().toString();
    message_send.putExtra(EXTRA_MESSAGE, message);
    MyActivity.this.startActivity(message_send);
}

這是DisplayMessageActivity.java的代碼:

 public class DisplayMessageActivity extends Activity {

@Overide
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    Intent message_send = getIntent();
    String message = message_send.getStringExtra(MyActivity.EXTRA_MESSAGE);
    TextView textView = new TextView(this);
    textView.setTextSize(40);
    textView.setText(message);
    setContentView(R.layout.activity_display_message);
}

如果有人能告訴我發生了什么事,那將是很好的。 謝謝!

DisplayMessageActivity正在創建新的TextView並設置傳入的消息,但是新的TextView不會顯示在任何地方。

最有可能的是, setContentView先創建一個新的TextViewsetContentView先設置setContentView ,然后調用findViewById來查找您的TextView

字符串傳遞的代碼都是正確的。

@Overide
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_display_message);
    Intent message_send = getIntent();
    String message = message_send.getStringExtra(MyActivity.EXTRA_MESSAGE);
    TextView textView = (TextView) findViewById(R.id.my_text_view);
    textView.setTextSize(40);
    textView.setText(message);
}

dispalyActivity您可以使用此代碼

Bundle b = getIntent().getExtra();
String message = b.getString("message name");

代替

Intent message_send = getIntent(); 
String message = message_send.getStringExtra(MyActivity.EXTRA_MESSAGE);

暫無
暫無

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

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