在另一个活动中更改小部件文本

时间:2010-04-08 15:34:57

标签: android android-activity widget

假设我有ActivityA和ActivityB,也假设ActivityA是活动的。我需要:

  1. 以编程方式在ActivityB中设置ActivityB的EditText文本
  2. 启动ActivityB
  3. 这是我的代码:

    EditText res;
    final LayoutInflater factory = getLayoutInflater();
    final View resultView = factory.inflate(R.layout.ActivityB, null);
    
    // get widget
    res = (EditText) resultView.findViewById(R.id.txtResult);
    
    // set the text
    res.setText("foobar");
    
    
    // create intent
    Intent i = new Intent(ActivityA.this, ActivityB.class);
    startActivity(i);
    

    ActivityB启动,但txtResult中没有任何文字。我该如何解决这个问题?

1 个答案:

答案 0 :(得分:5)

在ActivityA中startActivity(i);之前

i.putExtra("myText", "someValue");

在ActivityB的onCreate

String str = getIntent().getStringExtra("myText");
myEditText.setText(str);