android fragment 发广播吗,我的fragment用广播接收数据,然后用自动更新ListView
该楼层疑似违规已被系统折叠隐藏此楼查看此楼if (RongIM.getInstance() != null) {List list = RongIM.getInstance().getConversationList();list2 = new ArrayList>();for (int i = 0; i < list.size(); i++) {HashMap map = new .
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
if (RongIM.getInstance() != null) {
List list = RongIM.getInstance().getConversationList();
list2 = new ArrayList>();
for (int i = 0; i < list.size(); i++) {
HashMap map = new HashMap();
map.put("id", list.get(i).getTargetId());
map.put("title", list.get(i).getConversationTitle());
String result = new String(list.get(i).getLatestMessage().encode());
if (result.contains(",\"duration\":")) {
map.put("latest", "[语音]");
} else if (result.contains("{\"imageUri\":\"")) {
map.put("latest", "[图片]");
} else {
JSONObject jsonObject;
try {
jsonObject = new JSONObject(result);
map.put("latest", jsonObject.getString("content"));
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
Date date = new Date(list.get(i).getReceivedTime());
SimpleDateFormat format = new SimpleDateFormat("HH:mm");
String time = format.format(date);
map.put("time", time);
map.put("left", list.get(i).getUnreadMessageCount()+"");
map.put("latestId", list.get(i).getLatestMessageId()+"");
list2.add(map);
}
}
adapter = new ConversationAdapter(getActivity(), list2,listPatient);
listView.setAdapter(adapter);
/**
* 新建一个广播接受者
*/
mBroadcastReceiver = new BroadcastReceiver(){
@SuppressWarnings("unchecked")
@Override
public void onReceive(Context context, Intent intent) {
String action = intent.getAction();
if(action.equals(ACTION_NAME)){
list2.clear();
list2.addAll((ArrayList>) intent.getSerializableExtra("list"));
if (FragmentPatientRecieveMessage.this.getActivity() != null) {
adapter.notifyDataSetInvalidated();
adapter.notifyDataSetChanged();
}
}
}
};
//注册一个广播
registerBoradcastReceiver();
更多推荐

所有评论(0)