- 浏览: 50548 次
文章分类
- 全部博客 (25)
- Android (19)
- startActivityForResult() (1)
- Intent (3)
- HTML (1)
- onCreate (1)
- Button (3)
- OnClick (3)
- Activity (2)
- savedInstanceState (1)
- Service (2)
- message (1)
- Notification (1)
- Broadcast (1)
- SQLite (1)
- SharePreferences (1)
- Galaxy 9300 (1)
- 刷机 (1)
- root (1)
- ContentProvider (1)
- 笔记本 (1)
- 散热 (1)
- 算法 (3)
- C (4)
- socket (0)
- java (0)
最新评论
参考链接:http://www.cnblogs.com/mubai/archive/2011/09/21/2183816.html
我想要做的一个事情是,在一个主界面(主Activity)上能连接往许多不同子功能模块(子Activity上去),当子模块的事情做完之后就回到主界面,或许还同时返回一些子模块完成的数据交给主Activity处理。
这里实例,主界面是:MainActivity;子模块:SecondAcitivity
MainAcitivity:
package com.test.intentdemo; import android.app.Activity; import android.content.Intent; import android.net.Uri; import android.os.Bundle; import android.view.Menu; import android.view.View; import android.widget.Button; import android.widget.Toast; public class MainActivity extends Activity { private Button btn=null; public final static int REQUEST_CODE=1; public void onCreate(Bundle savedInstanceState)//onCreate方法用来初始化Activity实例对象 { super.onCreate(savedInstanceState);//super.onCreate(savedInstanceState)的作用是调用其父类Activity的onCreate方法来实现对界面的图画绘制工作 setContentView(R.layout.activity_main);//setContentView(R.layout.main)的作用是加载一个界面 btn=(Button)findViewById(R.id.btn); btn.setOnClickListener(listener); } private View.OnClickListener listener=new View.OnClickListener() { @Override public void onClick(View v) { // Intent intent=new Intent(); // intent.setAction(Intent.ACTION_SENDTO); // intent.setData(Uri.parse("smsto:5554")); // intent.putExtra("sms_body", "Hello!");//sms_body不能随意换成 // startActivity(intent); Intent intent=new Intent(); intent.setClass(MainActivity.this, SecondActivity.class);//从一个activity跳转到另一个activity intent.putExtra("str", "Intent Demo");//给intent假如额外数据,key为“str”,key值为"Intent Demo" //startActivity(intent); startActivityForResult(intent,REQUEST_CODE);//如果requestCode>=0,就会调用onActivityResult() } }; protected void onActivityResult(int requestCode, int resultCode, Intent data) //requesCode用于标识对应于哪一个子模块,resultCode用于标识了子模块中哪一个intent携带的数据 { if(requestCode==REQUEST_CODE) { switch(resultCode) { case SecondActivity.RESULT_CODE: Bundle bundle=data.getExtras();//不需要声明新的Intent对象,直接用data就可以,这里的data应该是SecondAcitivity传递过来的 String str =bundle.getString("back"); Toast.makeText(MainActivity.this, str, Toast.LENGTH_LONG).show(); break; default: break; } } }; @Override public boolean onCreateOptionsMenu(Menu menu) { getMenuInflater().inflate(R.menu.activity_main, menu); return true; } }
SecondAcitivity:
package com.test.intentdemo; import android.R.string; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.view.View; import android.widget.Button; import android.widget.TextView; public class SecondActivity extends Activity { private TextView secondTxt; private Button secondBtn; public final static int RESULT_CODE=1; @Override protected void onCreate(Bundle savedInstanceState) { // TODO Auto-generated method stub super.onCreate(savedInstanceState); setContentView(R.layout.second); Intent intent=getIntent();//getIntent将该项目中包含的原始intent检索出来,将检索出来的intent赋值给一个Intent类型的变量intent Bundle bundle=intent.getExtras();//.getExtras()得到intent所附带的额外数据 String str=bundle.getString("str");//getString()返回指定key的值 secondTxt=(TextView)findViewById(R.id.secondTxt);//用TextView显示值 secondTxt.setText(str); secondBtn=(Button)findViewById(R.id.btn2); secondBtn.setOnClickListener(listener); } private View.OnClickListener listener=new View.OnClickListener() { @Override public void onClick(View v) { // TODO Auto-generated method stub Intent intent=new Intent(SecondActivity.this,MainActivity.class); intent.putExtra("back", "Back Data"); setResult(RESULT_CODE, intent);//resultCode用于标识此intent finish(); } }; }
发表评论
-
ContentProvider
2012-08-09 14:43 856ContentProvider学习笔记 ContentPro ... -
Galaxy 9300 刷机和获取root权限
2012-08-08 14:19 1619刷机和ROOT是两个不同但是很类似的动作。 刷机应该就 ... -
SharedPreferences 存储
2012-07-27 20:02 929SharedPreferences是Android平台 ... -
SQLite 存储
2012-07-27 10:33 805SQLite是一种轻量级的,嵌入式的数据库系统,它占用的资源非 ... -
Android Broadcast 广播
2012-07-23 10:47 946从现实生活中理解广播机制 一听到广播我们第一感觉就会联 ... -
Status Notification
2012-07-22 18:12 1354Status Notification是作用是在页眉的位置,提 ... -
Android Message机制
2012-07-20 11:01 1211参考链接http://www.cnblogs.com/hnra ... -
Android Service之bindService()
2012-07-17 14:37 1224http://www.cnblogs.com/onlylitt ... -
Android Service 之StartService()
2012-07-17 10:25 11797Service是android 系统中的一种组件,它跟Acti ... -
Activity_savedInstanceState
2012-07-14 10:31 4026假设有两个Activity,分别是MainActivity,S ... -
Activity生命周期
2012-07-13 11:24 764Activity的生命周期图如上所示 用一个实例来测试 ... -
ButtonDemo_OnClick_2
2012-07-13 00:47 635public void onCreate(Bundle ... -
intentDemo_2
2012-07-13 00:45 786<manifest xmlns:android=& ... -
intentDemo_1
2012-07-13 00:45 606package com.test.intentdemo; ... -
ButtonDemo_OnClick_3
2012-07-13 00:45 602package com.test.buttondemo; ... -
ButtonDemo_OnClick_1
2012-07-12 22:51 902public class MainActivity ex ... -
Android开发——关于onCreate的解读
2012-07-12 22:48 623在AndroidManifest.xml文件中的< ... -
Intent传递数据从一个Activity到另一个Activity
2012-07-12 21:19 11832MainActivity package com.te ...
相关推荐
下面我们将深入探讨`startActivityResult`的使用方法及其在获取通讯录信息中的应用。 首先,让我们了解`startActivityForResult`的基本语法: ```java Intent intent = new Intent(this, SecondActivity.class); ...
在Android应用开发中,`startActivityForResult()`是一个关键的方法,用于在不同的Activity之间进行数据交互。这个方法允许一个Activity启动另一个Activity,并等待返回的结果。在本篇中,我们将深入探讨`...
下面我们将深入探讨`startActivityForResult`的详细用法。 1. **启动Activity并传递数据** 使用`startActivityForResult`启动另一个Activity时,我们通常会通过Intent对象来传递数据。Intent不仅用于启动Activity...
在Android应用开发中,`startActivityForResult()`是一个关键的方法,用于启动一个新的Activity并期待返回一个结果。这个方法在实现交互式流程或者数据交换时非常常见,例如选择照片、获取用户输入等。下面将详细...
定义了4个Activity,主activity跳转到其他2个时附带String good,第二个在接收到数据后将String +"boy"后返回给主Activity并Toast;第三个在接收到数据后将String +"boy&girl"后返回给主Activity并Toast。...
`StartActivityForResult`的基本用法 `StartActivityForResult`方法有两个参数:`Intent`和`int`。`Intent`用于指定要启动的目标Activity,而`int`是请求码,用于区分不同的启动操作。基本调用如下: ```java ...
以下是对`startActivityForResult()` 使用方法的详细说明: 1. **启动Activity并等待结果:** 当我们使用`startActivityForResult(Intent intent, int requestCode)` 启动一个新的Activity时,`intent` 参数是一个...
`startActivityForResult()`是Intent的一种特殊用法,它允许一个Activity启动另一个Activity,并期望在新Activity执行完特定操作后返回结果。下面将详细阐述`startActivityForResult()`的工作原理及其在实际开发中的...
**一、startActivityForResult基本用法** `startActivityForResult`有两个参数:Intent和int请求码。Intent是用来启动目标Activity的,请求码用于在`onActivityResult`中区分来自不同活动的结果。 ```java Intent ...
在Android应用开发中,`startActivityForResult()`是一个关键方法,用于在不同的Activity之间进行交互,尤其是在需要从一个Activity获取返回结果时。这个方法允许我们启动一个新的Activity,并在它完成之后得到回调...
传统的使用方式是定义 requestCode,然后调用 startActivityForResult 方法,最后重写 Activity 或者 Fragment 的 onActivityResult 方法来处理结果。但是,这种方法存在一些问题。当 requestCode 比较多的时候,...
首先,让我们理解`startActivityForResult()`的基本用法。当我们在Activity A中调用`startActivityForResult(Intent intent, int requestCode)`时,其中`intent`是用于启动新Activity的Intent,`requestCode`是一个...
首先,让我们深入了解一下`startActivityForResult()`的使用方法。在`Fragment`中,你需要调用`getActivity().startActivityForResult()`,并传入一个`Intent`对象来指定要启动的`Activity`和任何相关的数据。例如:...
这篇博客“startActivityForResult Demo”可能详细介绍了如何使用这个方法以及相关的实践案例。 `startActivityForResult`的工作原理是这样的:当一个Activity(我们称为启动Activity)调用`startActivityForResult...
3个方法的介绍和使用 startActivityForResult(Intent intent, int requestCode ) onActivityResult(int requestCode ,int resultCode, Intent data) setResult(int resultCode,intent intent)
以上就是关于Activity与Fragment混用中使用`startActivityForResult()`方法的解析。通过理解这个过程,开发者能够更好地管理应用程序的流程,提高用户体验。在实际的项目开发中,这样的交互方式是非常常见的,因此...
下面将详细阐述`StartActivityForResult`的工作原理、使用步骤以及一些注意事项。 ### 1. 工作原理 `StartActivityForResult`的工作流程如下: 1. 主Activity(启动者)调用`startActivityForResult`方法,传入被...
下面将详细介绍`startActivityForResult`的工作原理和使用方法。 一、`startActivityForResult`的基本用法 1. 启动新活动:调用`startActivityForResult(Intent intent, int requestCode)`,其中`intent`参数是一...
这需要我们使用`Intent.createObservable()`方法,结合`subscribeOn`和`observeOn`来指定线程行为。例如: ```java Observable<Result> resultObservable = Intent.createObservable(context, new Func1, Result>()...