Fragment通过广播刷新界面
2016-05-09 18:14
513 查看
纠结了好久的问题,fragment跳转到activity后,当activity执行某些操作后,当返回时,刷新当前的fragment.用广播实现。
1.在Fragment的onActivityCreated()方法中注册广播
@Override
public void onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
LocalBroadcastManager broadcastManager = LocalBroadcastManager.getInstance(getActivity());
IntentFilter intentFilter = new IntentFilter();
intentFilter.addAction("android.intent.action.CART_BROADCAST");
BroadcastReceiver mItemViewListClickReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent){
String msg = intent.getStringExtra("data");
if("refresh".equals(msg)){
getData();
}
}
};
broadcastManager.registerReceiver(mItemViewListClickReceiver, intentFilter);
}
2.在Activity结束的时候更新
Intent intent = new Intent("android.intent.action.CART_BROADCAST");
intent.putExtra("data","refresh");
LocalBroadcastManager.getInstance(UploadPictureActivity.this).sendBroadcast(intent);
sendBroadcast(intent);
finish();
1.在Fragment的onActivityCreated()方法中注册广播
@Override
public void onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
LocalBroadcastManager broadcastManager = LocalBroadcastManager.getInstance(getActivity());
IntentFilter intentFilter = new IntentFilter();
intentFilter.addAction("android.intent.action.CART_BROADCAST");
BroadcastReceiver mItemViewListClickReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent){
String msg = intent.getStringExtra("data");
if("refresh".equals(msg)){
getData();
}
}
};
broadcastManager.registerReceiver(mItemViewListClickReceiver, intentFilter);
}
2.在Activity结束的时候更新
Intent intent = new Intent("android.intent.action.CART_BROADCAST");
intent.putExtra("data","refresh");
LocalBroadcastManager.getInstance(UploadPictureActivity.this).sendBroadcast(intent);
sendBroadcast(intent);
finish();
相关文章推荐
- Elasticsearch配置详解、文档元数据
- 伤神!!Eclipse配置Struts2问题:ClassNotFoundException: org...dispatcher.ng.filter.StrutsPrepareAndExecuteFilter
- windows7如何查看端口被占用
- Levenberg-Marquardt算法简介和C++实现
- 突发奇想0.v0
- 关于切换数据库连接不到数据库问题
- android播放网络音频
- Ansi,UTF8,Unicode,ASCII编码的区别
- HDU 5477 A Sweet Journey
- IO学习(十四)总结IO学习1-13
- Google C++ Style Guide----作用域
- 微信摇一摇的代码实现
- IOS 设置导航栏
- 彻底理解handler的实现原理
- EMC {code} 计划又增加新的开源项目,已多达 48 个开源项目,逾35万行代码
- EMC {code} 计划又增加新的开源项目,已多达 48 个开源项目,逾35万行代码
- Python模拟HTTPS请求返回HTTP 401 unauthorized错误
- Hive本地模式安装及遇到的问题和解决方案
- 创始人汪华:创新者去哪儿
- OGG日常维护