Fragment里面获取广播

在 GasFragment 中,通过创建并注册BroadcastReceiver来接收特定action的广播。在onAttach()方法中注册,onDestroyView()中注销,确保广播接收器的生命周期与Fragment同步。广播接收器在onReceive()方法中更新UI,显示从Intent中获取的数据。
研究了一上午的在Fragment获取广播,然后在网上查了一些资料,结果还是没有实现接受到广播,但最后终于看到一篇帖子是可以实现的,就转载过来了。
内容如下:
在开发中有时候会遇见一些的情况:根据不同的需求切换不同的fragment ,然后一些操作使当前fragment中显示的内容进行一些调整。很多时候我们都是想的在fragment添加到Activity中时通过 fragmet. getView()获取fragment对象的View 。然后用findViewById()获取到fragment中的控件对象进行操作,很悲剧的是不管用啊有木有。我是个小白,研究了近一周都没搞定,只有采用另一种方式对fragment中的控件进行操作了。那就是广播。    UI中需要时发送一条广播 可顺便传入一些需要的值,在fragment中接收广播,获取值并对fragment中的控件进行操作,经本人验证完全可以。以下是Demo关键代码
在Fragment中

  1. public class GasFragment extends Fragment {  
  2.     private TextView gasName;  
  3.     private TextView gasadderss;  
  4.       
  5.     private ReceiveBroadCast receiveBroadCast;  
  6.     public  GasFragment (){}  
  7.       
  8.     @Override  
  9.     public void onAttach(Activity activity) {  
  10.          
  11.         /** 注册广播 */  
  12.         receiveBroadCast = new ReceiveBroadCast();  
  13.         IntentFilter filter = new IntentFilter();  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值