Android 从一个Activity跳转到另一个Activity获取第二个Activity的返回值
来源:互联网 发布:淘宝怎么发布商品信息 编辑:程序博客网 时间:2024/05/17 22:57
在做安卓开发的过程中,经常会在两个Activity之间传递数据,从第一个Activity传递数据到第二个Activity是很简单的,在第一个Activity中这样写代码
Intent intent = new Intent(packageContext, cls); intent.putExtra(name, value); startActivity(intent);
然后在第二个Activity中接受就可以了
Intent intent = getIntent();intent.getStringExtra(name);
如果是想要在第一个Activity中接受第二个Activity返回的数据改怎么办呢?其实跟上面的类似,下面就简单演示一个程序。
首先是布局文件activity_main.xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" tools:context=".MainActivity" > <EditText android:id="@+id/et_content1" android:lines="6" android:layout_width="match_parent" android:layout_height="wrap_content" android:hint="请输入内容一" /> <EditText android:id="@+id/et_content2" android:lines="6" android:layout_width="match_parent" android:layout_height="wrap_content" android:hint="请输入内容二" /> <Button android:onClick="select_content1" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="选择内容一" /> <Button android:onClick="select_content2" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="选择内容二" /></LinearLayout>第二个activity_content.xml
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" > <ListView android:id="@+id/lv" android:layout_width="match_parent" android:layout_height="match_parent"></ListView></LinearLayout>还有一个lv_item.xml
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="vertical" > <TextView android:id="@+id/sms_info" android:drawableLeft="@drawable/cqu" android:gravity="center_vertical" android:layout_width="match_parent" android:layout_height="wrap_content" android:textColor="#000000" android:text="afafga"/>"</LinearLayout>主Activity函数
public class MainActivity extends Activity { private EditText et_content1;private EditText et_content2;@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); et_content1 = (EditText) findViewById(R.id.et_content1); et_content2 = (EditText) findViewById(R.id.et_content2); } public void select_content1(View v){ Intent intent = new Intent(MainActivity.this,ListContent2Activity.class); /** * 可以一次性完成这项任务,当程序执行到这段代码的时候, * 假若从T1Activity跳转到下一个Text2Activity, * 而当这个Text2Activity调用了finish()方法以后, * 程序会自动跳转回T1Activity, * 并调用前一个T1Activity中的onActivityResult( )方法。 * */ startActivityForResult(intent, 0); } public void select_content2(View v){ Intent intent = new Intent(MainActivity.this,ListContent1Activity.class); startActivityForResult(intent, 1); } /***** * 接受第二个Activity返回的数据时调用 * * ****/ @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); if (data == null) {return;} String contentInfo = data.getStringExtra("contentInfo"); // 根据返回码的不同,设置参数 if (requestCode == 0) { et_content1.setText(contentInfo);} if (requestCode == 1) { et_content2.setText(contentInfo);} }}第二个Activity
public class ListContent1Activity extends Activity {private ListView lv;private String[] objects = {"序 缘浅情深","殁年,何为殁年?","似水流年,殁形散之。","“天降神女,是之殁年。”","“济世救民,是之殁年。”","“宸国之后,是之殁年。”","不知说了多少岁月的民谣还在传唱,留芳千古的旷世佳话依旧流传。茶楼说书人仍然热火朝天的诉说一场又一场的风花雪月。","世人向来喜闻才子佳人的旷世绝恋,说书人自然也是随口便吟得一篇佳作。其中,洺帝与神女的一段奇缘固是必不可少。成了百姓茶余饭后的一记解闷良方。","世人爱听的不过是洺帝与神女至死不渝的爱情,又怎会顾得背后的凄凉与落寞。","他们道我为神女,说我为皇后,可我究竟是谁?我忘了。我只记得,有一个与我风雨同舟的少年,我是他的妻。","人生兜兜转转,百转千回,终是奈何缘浅情深。我有幸命中得以见他,即使如今只能在黄泉水畔,奈何桥头等待他来世的一寸回眸,但我亦不后悔。","世间一切爱恨情仇,哪抵一碗孟婆汤。只愿那孟婆之汤别让我忘记太多,记得来世寻他来渡"};@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_content);lv = (ListView) findViewById(R.id.lv);ArrayAdapter<String> adapter = new ArrayAdapter<String>(getApplicationContext(), R.layout.lv_item,R.id.sms_info, objects);lv.setAdapter(adapter);lv.setOnItemClickListener(new OnItemClickListener() {@Overridepublic void onItemClick(AdapterView<?> parent, View view, int positon,long id) {String contentInfo = objects[positon];Intent data = new Intent();// 设置要回传的数据data.putExtra("contentInfo", contentInfo);// 设置回传码和IntentsetResult(0, data);finish();}});}}
public class ListContent2Activity extends Activity {private ListView lv;private String[] objects = {"他将手中的石头揉碎了随风扬走,于是苍穹星辰浩瀚。","世间本无日月,星盘先行。", "又是一个开天辟地的故事,将最近自己的几个短篇里的梗揉了一下,出了个小练笔。", "因为是练笔,很短,不到两千字,但却是完整的故事。", "这里是 烨弥的烨弥。"};@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_content);lv = (ListView) findViewById(R.id.lv);ArrayAdapter<String> adapter = new ArrayAdapter<String>(getApplicationContext(), R.layout.lv_item,R.id.sms_info, objects);lv.setAdapter(adapter);lv.setOnItemClickListener(new OnItemClickListener() {@Overridepublic void onItemClick(AdapterView<?> parent, View view, int positon,long id) {String contentInfo = objects[positon];Intent data = new Intent();// 设置要回传的数据data.putExtra("contentInfo", contentInfo);// 设置回传码和IntentsetResult(1, data);finish();}});}}
0 0
- Android 从一个Activity跳转到另一个Activity获取第二个Activity的返回值
- 从一个Activity跳转到另一个Activity
- Android之从一个activity跳转到另一个activity
- android实现从一个activity跳转到另一个activity中
- Activity之间的跳转---从一个Activity跳转到另一个Activity
- Android中从一个Activity跳转到另一个Activity经历的生命周期?
- android中如何添加一个监听按钮,点击之后从一个activity跳转到另一个activity
- Android一个应用程序中的Activity跳转到另一个Activity
- Android -- 在一个Activity开启另一个Activity 并 获取他的返回值。
- Android开发历程_1(从1个activity跳转到另一个activity)
- Android开发历程_1(从1个activity跳转到另一个activity)
- android 一个activity跳转另一个activity
- Intent:从一个Activity到另一个Activity
- 从一个activity跳转到另一个程序的指定activity(含apk检测)
- Android从一个APP跳转到另一个APP的主界面或者某Activity
- Android Intent传递数据从一个Activity到另一个Activity
- 从一个activity回退到另一个activity并返回值
- Android activity跳转到另一个activity的指定fragment页面
- MPEG2-TS音视频同步原理
- 检测到有潜在危险的 Request.Form 值
- 如何看懂ORACLE执行计划
- 169.Majority Element
- 输入法的设置
- Android 从一个Activity跳转到另一个Activity获取第二个Activity的返回值
- 字符串-05 字符串循环左移(20)
- apache部署多个项目
- docker 使用Dockerfile 创建带jdk 和tomcat的镜像
- C语言数组学习
- AIDL在android系统中的作用
- 【C#】打印机 printDocument、printDialog、PageSetupDialog、printPreviewDialog
- Swift学习笔记系列目录
- linux/unix系统错误定义errno.h