适配器ArrayAdapter 刷新Fragment页面ListView数据
时间: 2024-02-15 20:06:10 浏览: 98
ListView使用ArrayAdapter适配器
要在 Fragment 中刷新 ListView 的数据,需要对 ArrayAdapter 进行更新并调用 `notifyDataSetChanged()` 方法。可以在 Fragment 中创建一个方法,用于更新 ArrayAdapter 的数据,然后在需要刷新数据的时候调用该方法即可。示例代码如下:
```java
public class MyFragment extends Fragment {
private ListView mListView;
private ArrayAdapter<String> mAdapter;
private List<String> mDataList = new ArrayList<>();
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.fragment_layout, container, false);
mListView = view.findViewById(R.id.list_view);
mAdapter = new ArrayAdapter<>(getContext(), android.R.layout.simple_list_item_1, mDataList);
mListView.setAdapter(mAdapter);
return view;
}
// 更新数据的方法
public void updateData(List<String> dataList) {
mDataList.clear();
mDataList.addAll(dataList);
mAdapter.notifyDataSetChanged();
}
}
```
在上面的示例代码中,`updateData()` 方法用于更新 ArrayAdapter 的数据,并调用 `notifyDataSetChanged()` 方法。在需要刷新 Fragment 中 ListView 的数据时,只需要调用该方法即可。例如:
```java
MyFragment fragment = // 获取 Fragment 实例
List<String> dataList = // 获取新的数据
fragment.updateData(dataList);
```
这样就可以刷新 Fragment 中 ListView 的数据了。
阅读全文