你的adapter 跟listView 绑定了吗?
或者绑定被错误置换了?
getView 是由 listView 调用的。

解决方案 »

  1.   

    是没有执行getView,还是执行了,界面没有刷新?
      

  2.   

    最外层加个try catch 没报错???
    代码贴出来看看
      

  3.   

    看刷新是在哪做的,我有次始终刷新不了,后来检查是在resume中取的是旧数据
      

  4.   

    它不报错的,只是不执行getview,,,
      

  5.   

    是不是初始化的时候adapter为空?我也遇到过这个问题
      

  6.   


    你notifyDataSetChanged();之前,list.addAll(data);一下
      

  7.   

    我的adapter肯定不为空,一开始已经显示了,不能再add了
      

  8.   

    你不是改变数据了吗?如果不重新addall的话好像listview里存的还是之前的list的引用
      

  9.   

    你不是改变数据了吗?如果不重新addall的话好像listview里存的还是之前的list的引用你应该多练下adapter了,,,
      

  10.   

    你不是改变数据了吗?如果不重新addall的话好像listview里存的还是之前的list的引用你应该多练下adapter了,,,
      

  11.   

    我想成你要添加数据结果视view没更新了
      

  12.   


    看看代码吧,还没遇到过你说的情况
    private Runnable runnable = new Runnable( ) {
    public void run ( ) {
    movies = getMyApp().getDownloadItems();//获取全局变量数据
    if(movies != null) {
    if(adapter != null) {
    adapter.setMovies(movies);
    adapter.notifyDataSetChanged();
    }else {
    adapter = new DownloadAdapter(getmContext(), listView, movies);
    }
    }
    handler.postDelayed(this,1500);
    }
    };
    情况这样,下载的时候会时时刷新,getview,下载好了以后就不会走getview了,这让我很蛋疼了,下载好不getview,就存在问题,当重新走生命周期的时候,listview不走getview,listview就为空,就不会显示了
      

  13.   

    private Runnable runnable = new Runnable( ) {
    public void run ( ) {
    movies = getMyApp().getDownloadItems();//获取全局变量数据
    if(movies != null) {
    if(adapter != null) {
    adapter.setMovies(movies);
    adapter.notifyDataSetChanged();
    }else {
    adapter = new DownloadAdapter(getmContext(), listView, movies);
    }
    }
    handler.postDelayed(this,1500);
    }
    };
    情况这样,下载的时候会时时刷新,getview,下载好了以后就不会走getview了,这让我很蛋疼了,下载好不getview,就存在问题,当重新走生命周期的时候,listview不走getview,listview就为空,就不会显示了
      

  14.   


    看看代码吧,还没遇到过你说的情况
    private Runnable runnable = new Runnable( ) {
    public void run ( ) {
    movies = getMyApp().getDownloadItems();//获取全局变量数据
    if(movies != null) {
    if(adapter != null) {
    adapter.setMovies(movies);
    adapter.notifyDataSetChanged();
    }else {
    adapter = new DownloadAdapter(getmContext(), listView, movies);
    }
    }
    handler.postDelayed(this,1500);
    }
    };
    情况这样,下载的时候会时时刷新,getview,下载好了以后就不会走getview了,这让我很蛋疼了,下载好不getview,就存在问题,当重新走生命周期的时候,listview不走getview,listview就为空,就不会显示了你movies为空时就不走下面的逻辑了,adapter的相关操作就不执行了。
      

  15.   


    看看代码吧,还没遇到过你说的情况
    private Runnable runnable = new Runnable( ) {
    public void run ( ) {
    movies = getMyApp().getDownloadItems();//获取全局变量数据
    if(movies != null) {
    if(adapter != null) {
    adapter.setMovies(movies);
    adapter.notifyDataSetChanged();
    }else {
    adapter = new DownloadAdapter(getmContext(), listView, movies);
    }
    }
    handler.postDelayed(this,1500);
    }
    };
    情况这样,下载的时候会时时刷新,getview,下载好了以后就不会走getview了,这让我很蛋疼了,下载好不getview,就存在问题,当重新走生命周期的时候,listview不走getview,listview就为空,就不会显示了你movies为空时就不走下面的逻辑了,adapter的相关操作就不执行了。movies不可能为空,因为这是全局变量,并且有值,但是就是不走getview
      

  16.   

    一般来说,如果数据源不变化的话,那么notifyDataSetChanged()也没有作用,当然数据变化了,view有显示的缓存,也不需要getview
      

  17.   

    看看  adapter 的代码特别是  setMovies  跟 构造函数。
      

  18.   

    说说是什么原因和解决方法啊,给大家分享下由于线程阻塞了,不是所以感觉是执行了run没有执行getview,,,
      

  19.   

    我也遇到这个问题了。
    不过我的原因是,因为加载数据的时候,显示的是一个LoadingView,加载完后,才显示ListView
    我在显示LoadingView的时候调用adapter.notifyDataSetChanged就不会触发,原因大家懂得
      

  20.   

    我明显设置了,并且单步调试也走到了.  就是不走getView 
    if (adapter !=null) {
    adapter.addItem(GlobalModels.roomList.getRoomList());
    adapter.notifyDataSetChanged();
    }