Android RecyclerView更新某条/一条数据

注意:使用notifyItemRemoved(position)更新数据之前,还必须集合中删除该数据:mDatas.remove(position),否则不更新。
更新数据 

这里更新数据集不是用adapter.notifyDataSetChanged()而是 notifyItemInserted(position)与notifyItemRemoved(position) 否则没有动画效果。  


向指定位置插入Item
public final void notifyItemInserted(int position)
移除指定位置Item
public final void notifyItemRemoved(int position)
更新指定位置Item
public final void notifyItemChanged(int position)

为adapter中添加两个方法:
public void addData(int position) {  
    mDatas.add(position, "Insert One");  
    notifyItemInserted(position);  // 删除
}  
   
public void removeData(int position) {  
    mDatas.remove(position);  
    notifyItemRemoved(position);  //插入

notifyItemChanged(position); //更新


原生的Json解析:

public static JSONObject getJSON(Map map) {  
    Iterator iter = map.entrySet().iterator();  
    JSONObject holder = new JSONObject();  
    while (iter.hasNext()) {  
        Map.Entry pairs = (Map.Entry) iter.next();  
        String key = (String) pairs.getKey();  
        Map m = (Map) pairs.getValue();  
        JSONObject data = new JSONObject();  
        try {  
            Iterator iter2 = m.entrySet().iterator();  
            while (iter2.hasNext()) {  
                Map.Entry pairs2 = (Map.Entry) iter2.next();  
                data.put((String) pairs2.getKey(), (String) pairs2  
                        .getValue());  
            }  
            holder.put(key, data);  
        } catch (JSONException e) {  
            Log.e("Transforming", "There was an error packaging JSON", e);  
        }  
    }  
    return holder;  

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值