方法一,使用application进行共享
- 在MyApp中定义属性handler
package jason.com
import jason.com.MasterActivity.MyHandler;
import android.app.Application;
public class MyApp extends Application{
//共享变量
private MyHandler handler = null;
//set方法
public void setHandler(MyHandler handler){
this.handler = handler;
}
//get方法
public MyHandler getHandler(){
return handler;
}
}
- 在主Activity中给MyAPP属性handler赋值
public void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
mApp = (MyApp)getApplication();
handler = new Myhandler();
tv = (TextView)findViewById(R.id.tv);
btn_to = (Button)findViewById(R.id.btn_to);
//设置监听器
btn_to.setOnClickListener(new OnClickListener(){
public void onClick(View v){
//设置共享变量
Intent intent = new Intent(MasterActivity.this,ToChangeViewActivity.class);
startActivity(intent);
}
});
}
- 在另一个activity中获取MyApp中的handler进行传值
protected void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.show);
mApp = (MyApp)getApplication();
//获取该共享变量实例
mHandler = mApp.getHandler();
findViewById(R.id.btn_chang).setOnClickListener(new OnClickListener(){
public void onClick(View v){
//发送消息
mHandler.sendEmptyMessage(CHANGED);
ToChangeViewActivity.this.finish();
}
});
}
方法二, 使用广播
直接上代码:
MainActivity
public class MainActivity extends Activity{
TextView textView;
Button sButton;
protected void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
textView = (TextView)findViewById(R.id.show);
sButton = (Button)findViewById(R.id.startAnother);
sButton.setOnClickListener(new OnClickListener(){
@Override
public void onClick(View v){
startActivity(new Intent(MainActivity.this,AnotherActivity.class));
}
});
IntentFilter filter = new IntentFilter(AnotherActivity.action)
}
BroadcastReceiver broadcastReceiver = new BroadcastReceiver(){
public void onReceive(Context context,Intent intent){
textView.setText(intent.getExtras().getString("data"));
}
};
protected void onDestory(){
unregisterReceiver(broadcastReceiver);
};
}
转自:http://blog.youkuaiyun.com/jason0539/article/details/18075293 & http://blog.youkuaiyun.com/jason0539/article/details/18055259