activity如何显示来自于BroadcastReceiver的更新数据

需求描述:

 

你提供一个接口给我,让我更新界面的显示吧,让我在ConnectivityService调,
如updateWifiState(openState,connectState,connectedAP,rssi,scanResult)

wifi暂时显示这几个信息:

"Wifi打开状态"
"Wifi连接状态"
"Wifi当前连接"
"Wifi信号强度"
"扫描到的接入点"

 

 

===================

如何刷新activity上的一个textView
收到一个广播后就刷新textview,setText后内容没有显示出来,要按一下activity上的按键才显示出来!
如何才能一收到广播就刷新textview的内容。

------解决方案--------------------
handler
------解决方案--------------------
收到广播后,sendmessage,handler接收处理更新就好了
------解决方案--------------------
你debug一下,看你的setText到底有没有执行到
------解决方案--------------------
当然用Handler呀,还有post,和AsyncTask方式都是可以的。

代码如下:

 Handler handler = new Handler();

 Runnable update = new Runnable() {
  @Override
  public void run() {
   wifiAdapter.notifyDataSetChanged();
  }
 };

 public void updateWifi(int position, String value) {
  if (null == wifiAdapter)
   return;
  try {
   wifiAdapter.serItem(position, value);
   handler.post(update);
  } catch (Exception e) {
   e.printStackTrace();
  }
 }

 

///////////////

adapter.notifyDataSetChanged();

service 后台服务调用一个线程,来自动的刷新,listview 调用 adapter 的notifydatasetchanged 方法就能更新界面了

 

 

你可能感兴趣的:(activity如何显示来自于BroadcastReceiver的更新数据)