2016-01-05 59 views
0

当数据收到时,有什么办法刷新BroadcastReceiver中的片段ListView?如何刷新BroadcastReceiver中的片段ListView?

这是在碎片ListView的刷新方法扩展ListFragment:

public void refreshTicketList() { 

     list = readData.getAllRows(); 
     Collections.reverse(list); 
     if (list.isEmpty()) { 
      Toast.makeText(getContext(), "No data, Please Swipe Down to get data.", Toast.LENGTH_LONG).show(); 
     } else { 
      adapter = new ListAdapter(getContext(), list); 
      setListAdapter(adapter); 
     } 
    } 

如何使用在广播接收器这种方法吗?

+2

参考http://stackoverflow.com/questions/26163075/how-to -refresh-a-listview-from-a-broadcastreceiver – sasikumar

+0

我无法理解它:( –

回答

1

我发现当BroadcastReceiver从服务器接收数据时,我们该如何刷新ListView。

当广播接收器获取的数据,我们必须将消息发送到活动或片段是这样的:

BroadcastReceiver broadcastReceiver = new BroadcastReceiver() { 
      @Override 
      public void onReceive(Context context, Intent intent) { 
       //Refresh code here 
      } 
     }; 

@Override 
    public void onResume() { 
     super.onResume();   
     getActivity().registerReceiver(broadcastReceiver, new IntentFilter("REFRESH")); 
    } 


    @Override 
    public void onDestroy() { 
     super.onDestroy(); 
     getActivity().unregisterReceiver(broadcastReceiver); 
    } 

这一切;)