android 使用intent返回数据给上一个activity

2024-10-13 08:46:22

1、首先,创建一个android工程IntentTest,然后给这个主activity增加一个按钮,这个按钮用来启动另一个activity

android 使用intent返回数据给上一个activity

3、处理第一个activity中的按钮。增加了如下代码:Button b = 猾诮沓靥(Button)findViewById(R.id.button); b.setOnClickList髫潋啜缅ener(new OnClickListener() { @Override public void onClick(View v) { // TODO Auto-generated method stub Intent intent = new Intent(MainActivity.this, activity2.class);startActivityForResult(intent, 100); } });可以看到,这里使用了startActivityForResult()方法。这个方法的意思是,期待从下一个activity中获取数据。那么,这个100是什么意思呢?这个是唯一标识码,代表着第二个activity。比如,当前有多个activity会返回数据给第一个activity,那么第一个activity如何知道他获取到的数据是哪一个activity给他的呢?就是通过这个标识码进行判断的。

android 使用intent返回数据给上一个activity

5、然后,在actiivty2.java中,增加对这个按钮的处理Button b 屏顿幂垂= (Button)findViewById(伊怕锱鳏R.id.button2); b.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { // TODO Auto-generated method stub Intent intent = new Intent(); intent.putExtra("data_return", "Hello"); setResult(RESULT_OK, intent); finish(); } });可以看到,这里创建了一个新的intent,因为这个intent不需要任何意图,所以参数为空,这个intent就是要返回给上一个activity的intent.同样的用法,使用了intent.putExtra()增加了一些额外数据,然后通过setResult将数据传递给上一个数据,第一个参数一般是RESULT、RESULT_CANCELED

android 使用intent返回数据给上一个activity

8、最后的效果图如下

android 使用intent返回数据给上一个activity
猜你喜欢