最近做android + webservice + sql2008 测试,通了,
之前一直被4.0版本以上不支持在主线程上进行http数据交互困扰,
今天通了,但是发现listview 不能及时刷新,即删除或者增加数据以后回到查询页面还是以前的数据,要退出程序再查询才能显示更新的信息,
        new Thread()
        {
         public void run()
         {
             list = dbUtil.getAllInfo(); 
         }
        }.start();
          
        btn1.setOnClickListener(new OnClickListener() {  
              
            @Override  
            public void onClick(View v) {  
                hideButton(true);  
                setListView();  
            }  
        });     /** 
     * 设置listView 
     */  
    private void setListView() {  
  
        listView.setVisibility(View.VISIBLE);  
      adapter = new SimpleAdapter(  
                MainActivity.this,   
                list,   
                R.layout.adapter_item,   
                new String[] { "Cno", "Cname", "Cnum" },   
                new int[] { R.id.txt_Cno, R.id.txt_Cname, R.id.txt_Cnum }); 
        listView.setAdapter(adapter);  
    }  请问我该怎么修改啊, 小弟新手,麻烦各位说详细点,谢谢了AndroidlistviewSQL刷新

解决方案 »

  1.   

    修改过list数据后,调用Adapter的notifyDataSetChanged()方法。
      

  2.   

    private void setListView() {  
               。
               。
               。
         listView.setAdapter(adapter); 
         adapter.notifyDataSetChanged();
    }
      

  3.   

    删除或者增加后再请求一次数据 list = dbUtil.getAllInfo();然后adapter.notifyDataSetChanged();
    或者在原有的list上面删除和增加,然后adapter.notifyDataSetChanged();
      

  4.   

    修改数据源,setadapter之后 adapter.notifyDataSetChanged();还需要再明白吗?
      

  5.   

    你的SimpleAdapter指定的数据源是list,你的list改变后,调用notifyDataSetChanged(),listView自己会去刷新的