资深Panda 2014-07-07 03:57 采纳率: 0%
浏览 2748

Android Listview adapter数据更新

listview绑定适配器后,数据更新不是需要调用notifyDataSetChanged刷新数据吗,为什么我现在不用掉也能刷新,平台是4.2和4.4,低的平台没测。代码如下

    adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1);
    listview = (ListView)findViewById(R.id.listview);
    listview.setAdapter(adapter);
    btn = (Button)findViewById(R.id.button);
    btn.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View arg0) {
            adapter.add("item");
        }
    });
  • 写回答

1条回答

  • 老科达 2014-07-07 07:08
    关注

    /**
    * Adds the specified object at the end of the array.
    *
    * @param object The object to add at the end of the array.
    */
    public void add(T object) {
    synchronized (mLock) {
    if (mOriginalValues != null) {
    mOriginalValues.add(object);
    } else {
    mObjects.add(object);
    }
    }
    if (mNotifyOnChange) notifyDataSetChanged();
    }

    这个是源代码 最后已经帮你调用notify了。 建议有问题先自己分析。

    评论

报告相同问题?

悬赏问题

  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 对于相关问题的求解与代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作
  • ¥15 求NPF226060磁芯的详细资料