从 OnActivityCreate() 获取适配器

Get adapter from OnActivityCreate()

我正在尝试从 MainActivity 调用片段中的适配器上的 notifyDataSetChanged(),以便在更改数据后刷新 view/list。我在 OnActivityCreate() 中创建了适配器,所以我无法找到如何获取适配器的方法,因此我可以创建一个调用方法 adapter.notifyDataSetChanged()

片段

@Override
public void onActivityCreated(Bundle savedInstanceState) {
    super.onActivityCreated(savedInstanceState);

    String[] names = new String[] { "name1", "name1", "name1" };
    String[] values = new String[] { "value1", "value2", "value3" };
    MyArrayAdapter adapter = new MyArrayAdapter(getActivity(), names, values);
    setListAdapter(adapter);
}

我尝试在片段中创建一个方法并将 adapter 传递给它,但我无法从 Main Activity 中调用它。另外 getListAdapter() 不让我打电话给 notifyDataSetChanged()。在这里很困惑,谢谢!

只要让它对整个Activity可见即可。

... MyClass {

    private MyArrayAdapter adapter;

    @Override
    public void onActivityCreated(Bundle savedInstanceState) {
        super.onActivityCreated(savedInstanceState);

        String[] names = new String[] { "name1", "name1", "name1" };
        String[] values = new String[] { "value1", "value2", "value3" };
        adapter = new MyArrayAdapter(getActivity(), names, values);
       setListAdapter(adapter);
    }

    // Another method
    private void myMethod() {
          adapter.notifyDataSetChanged();
    }
}