这里会显示出您选择的修订版和当前版本之间的差别。
两侧同时换到之前的修订记录 前一修订版 后一修订版 | 前一修订版 | ||
wiki:book:notes:android:第一行代码-android-第2版-郭霖:第5章 [2022/04/06 16:27] 博丽幻月 [发送标准广播] |
wiki:book:notes:android:第一行代码-android-第2版-郭霖:第5章 [2022/04/06 18:51] (当前版本) 博丽幻月 [使用本地广播] |
||
---|---|---|---|
行 111: | 行 111: | ||
</ | </ | ||
==== 发送有序广播 ==== | ==== 发送有序广播 ==== | ||
+ | 发送方式更改为:\\ | ||
+ | <code java> | ||
+ | sendOrderedBroadcast(intent, | ||
+ | </ | ||
+ | 添加'' | ||
+ | <code xml AndroidManifest.xml> | ||
+ | ... | ||
+ | < | ||
+ | <action android: | ||
+ | </ | ||
+ | ... | ||
+ | </ | ||
+ | 最后在'' | ||
+ | ===== 使用本地广播 ===== | ||
+ | 在MainActivity中添加LocalReceiver类:\\ | ||
+ | <code java> | ||
+ | class LocalReceiver extends BroadcastReceiver{ | ||
+ | @Override | ||
+ | public void onReceive(Context context, Intent intent) { | ||
+ | Toast.makeText(context, | ||
+ | } | ||
+ | } | ||
+ | </ | ||
+ | 修改onCreate():\\ | ||
+ | <code java> | ||
+ | localBroadcastManager = LocalBroadcastManager.getInstance(this); | ||
+ | intentFilter = new IntentFilter(); | ||
+ | intentFilter.addAction(" | ||
+ | localReceiver = new LocalReceiver(); | ||
+ | localBroadcastManager.registerReceiver(localReceiver, | ||
+ | </ | ||
+ | 在按钮onClick()中添加:\\ | ||
+ | <code java> | ||
+ | Intent intent = new Intent(" | ||
+ | localBroadcastManager.sendBroadcast(intent); | ||
+ | </ | ||
+ | onDestroy()添加:\\ | ||
+ | <code java> | ||
+ | localBroadcastManager.unregisterReceiver(localReceiver); | ||
+ | </ |