1.创建MyApplication,声明变量mHandler,并设置set,get方法
public class MyApplication extends Application { public static MyApplication instance; private Handler mHandler; public static Context getAppContext(){ return instance == null ? null : instance.getApplicationContext(); } @Override public void onCreate() { super.onCreate(); instance = this; } public Handler getmHandler() { return mHandler; } public void setmHandler(Handler mHandler) { this.mHandler = mHandler; } }2.在清单文件中配置applicatin为自己的MyApplication
android:name=".service.MyApplication"3.使用
在一个activity
Handler mHandler= new Handler(){ @Override public void handleMessage(Message msg) { super.handleMessage(msg); switch (msg.what){ case : break; } } };
instance.setmHandler(mHandler);
在另一个activity instance.getHander();
Message msg = new Message();
msg.what =
Bundle bundle = new Bundle(); bundle.putSerializable("selectData", (Serializable) selectData); msg.setData(bundle); instance.getmHandler().sendMessage(msg);
本文介绍如何在Android中使用Handler实现跨Activity的数据通信。首先,通过创建自定义的MyApplication类,定义一个全局Handler变量,并提供getter和setter方法。接着,在一个Activity中实例化并设置Handler,然后在另一个Activity中通过MyApplication获取Handler实例,从而实现数据的传递。
569

被折叠的 条评论
为什么被折叠?



