2012-04-05 32 views
1

可能重复:
How to pass object from one activity to another in Android如何通过一个TextView的的值到另一个TextView的在不同活动

实际上我有两个活动活动1和活动2.对于这两个活动我有两个xml布局1.xml和2.xml。在1.xml我有Button和2.xml我有TextView。所以我想要的是点击Button,这是第一次活动我想要打开第二个活动,并且还想在Activity2中的Textview中显示Button中的文本显示。我的意思是说,假设Button中的文本是“ADD”,那么这个文本将显示在TextView中。

注:Button是活性1和TextView是活性2

回答

1

INTENT使用Intent来传递数据,putExtra()将允许你把数据

ActivityA

Intent myIntent = new Intent(ActivityA.this, Activityb.class); 
myIntent.putExtra("key", "value"); 
startActivity(myIntent); 

ActivityB

Intent myIntent = getIntent(); // this is just for example purpose 
myIntent.getExtra("key"); 
+0

开始新的活动下面的代码

Intent intent = new Intent(); intent.putExtra("TextValue", text1.getText().toString()); intent.setClass(Activity1.this, Activity2.class); startActivity(intent); 

在您的活性2。如果我想通过日期为值而不是字符串,那么可以怎么做 – AndroidDev 2012-04-05 06:38:11

+0

在日期格式的帮助下使用日期作为字符串。 – 2012-04-05 06:42:10

0

您需要为您的意图添加额外的参数。手表this article

1

试试这个使用意图:

在按钮上点击活动1:

Intent intent = new Intent(Activityone.class, Activitytwo.class); 
intent.putExtra("value2","world"); 
startActivity(intent); 

在活动2:

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    String value1 = super.getIntent().getExtras().getString("value1"); 
    myTextView.setText("value1: " + value1 + "); 
} 
0

第一项活动 -

Button btn = (Button)findViewById(R.id.button1); 
b.setOnClickListener(new View.OnClickListener() 
{ 
     @Override 
     public void onClick(View v) { 
      // TODO Auto-generated method stub 
         String passingdata = textview.getText().toString(); 
         Intent i = new Intent(Activity1.this, Activity2.class); 
         Bundle b = new Bundle(); 
         b.putString("Key", passingdata); 
         i.putExtras(b); 
         startActivity(i); 
     } 
    }); 

次活动 -

@Override 
protected void onCreate(Bundle savedInstanceState) 
{ 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.second); 
    Bundle b = getIntent().getExtras(); 
    String receivingdata = b.getStringExtra("Key"); 
    TextView tv = (TextView)findViewById(R.id.secondtext); 
    tv.setText(receivingdata); 
} 
1

虽然你按一下按钮写在onCreate()

String s = getIntent().getStringExtra("TextValue"); 
相关问题