这里会显示出您选择的修订版和当前版本之间的差别。
| 两侧同时换到之前的修订记录 前一修订版 后一修订版 | 前一修订版 | ||
|
wiki:book:notes:android:第一行代码-android-第2版-郭霖:第5章 [2022/04/06 16:10] 博丽幻月 [发送标准广播] |
wiki:book:notes:android:第一行代码-android-第2版-郭霖:第5章 [2022/04/06 18:51] (当前版本) 博丽幻月 [使用本地广播] |
||
|---|---|---|---|
| 行 109: | 行 109: | ||
| Intent intent = new Intent(" | Intent intent = new Intent(" | ||
| sendBroadcast(intent); | sendBroadcast(intent); | ||
| + | </ | ||
| + | ==== 发送有序广播 ==== | ||
| + | 发送方式更改为:\\ | ||
| + | <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); | ||
| </ | </ | ||