Some1知道为什么我的listview数据没有改变?

时间:2014-07-07 12:09:30

标签: android

我的listview在开始时被填满,但在我无法找到改变的方法之后 请参阅下面的代码

 public class myFragment  extends android.support.v4.app.Fragment
    {


 ListView list;

ArrayList<String> restorants=new ArrayList<String>();

 Manager m=new Manager();
 ArrayAdapter<String> adapter;


@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
        Bundle savedInstanceState) {

    View rootView = inflater.inflate(R.layout.fragment_, container, false);


   list=(ListView) rootView.findViewById(R.id.myList);

   for(Restorant r : m.getResByCity("nyc"))
   {
       restorants.add(r.getName());
   }
adapter=new ArrayAdapter<String>(getActivity(), R.layout.item_list, R.id.restorantItem,restorants);  

list.setAdapter(adapter);



    return rootView;
}
public void makeChange(String s)
{
    restorants.remove(0);


    ((ArrayAdapter)list.getAdapter()).notifyDataSetChanged();

}
}

在调用方法makeChange()时,我检查了restorants项目是否正在删除,以便调用方法没有问题

makeChange()来自我的mainActivity,其viewpager包含fragment,其中viewpager包含{{1}}。

1 个答案:

答案 0 :(得分:0)

您需要从提供给适配器的数据集中删除该元素,

adapter.remove(s)

Here您可以找到文档