android - 如何刷新查看寻呼机数据?
问题描述
当我从服务获取数据时,我重新加载数组列表中的所有数据并传递给适配器,但适配器显示我的旧数据。当我在适配器中打印数组列表时,我在适配器中传递新数据。显示旧数据。当我加载新数据时,我清除所有数据库也。
我在视图寻呼机中加载数据,所以我在代码下面创建了 newInstance.so,我从服务中获取数据并存储在 arraylist 中并传递给适配器
adapter = new PagerAdapter(activity.getSupportFragmentManager(),"TotalCount",firstCountArrayList,secondAcoountArrayList,totalCountArrayList);
pager.setPageMargin(-400);
pager.setAdapter(adapter);
adapter.notifyDataSetChanged();
pager.setOffscreenPageLimit(firstCountArrayList.size());
tabs.setViewPager(pager,selected);
在 PagerAdapter 我得到了旧的数组列表数据
public class PagerAdapter extends FragmentPagerAdapter {
String TotalCount = "";
ArrayList<String> firstCountArrayList,secondAcoountArrayList,totalCountArrayList;
public PagerAdapter(FragmentManager fm, String TotalCount, ArrayList<String> firstCountArrayList, ArrayList<String> secondAcoountArrayList, ArrayList<String> totalCountArrayList
) {
super(fm);
//super(fm);
this.TotalCount=TotalCount;
this.firstCountArrayList=firstCountArrayList;
this.secondAcoountArrayList=secondAcoountArrayList;
this.totalCountArrayList=totalCountArrayList;
}
@Override
public CharSequence getPageTitle(int position) {
return firstCountArrayList.get(position);
}
@Override
public int getCount() {
return firstCountArrayList.size();
}
public int getItemPosition(Object object) {
return POSITION_NONE;
}
@Override
public Fragment getItem(int position) {
Log.e(TAG," PagerAdapter firstCountArrayList==>"+firstCountArrayList.toString());
return NewPageInstance.newInstance(position,firstCountArrayList,secondAcoountArrayList,totalCountArrayList);
在所有数据传递给 NewPageInstance 并显示在 TextView 上之后
public static NewPageInstance newInstance(int position, String totalCount, ArrayList<String> firstCountArrayList, ArrayList<String> secondAcoountArrayList, ArrayList<String> totalCountArrayList) {
totalCount=totalCount;
firstCountArrayList=firstCountArrayList;
secondAcoountArrayList=secondAcoountArrayList;
totalCountArrayList=totalCountArrayList;
}
和所有数据显示textview
这仅在第一次工作。不刷新视图寻呼机数据。
解决方案
在您的视图寻呼机适配器中添加以下代码:-
public int getItemPosition(Object object) {
return POSITION_NONE;
}
或查看寻呼机更改侦听器通知您的查看寻呼机适配器:-
mPagerAdapter.notifyDataSetChanged();
推荐阅读
- vb.net - 当我运行程序时,出现错误(cmd.executenonquery)
- python - 使用 python 对 CSV 文件进行更改
- python-3.x - Python:刷新本地文件夹
- r - 基于R中的模拟数据计算均方预测误差
- amazon-web-services - AWS Lambda:如何从配置中删除环境变量
- codeigniter - 错误 codeigniter 为同一用户生成多个会话
- c# - VB.Net 到 C# 的转换
- google-cloud-platform - 在谷歌云中,从 VM 终端(ssh 或 telnet)中找到 VM 的临时 IP 地址
- sql - 如何在 MS Access 中将字段更改为 SSN 格式(###-##-####)?
- twitter-bootstrap-3 - Bootstrap 表和 Bootstrap 4 支持