我想分享这些知识。我认为这个问题出在不同的地方,但我想以清晰的方式回答。我想刷新视图寻呼机内部的片段(文本视图,按钮等)的视图。怎么样?
答案 0 :(得分:1)
有不同的近似值,其中最有效的是:
1)将自定义适配器类的扩展名更改为FragmentStatePagerAdapter"。
2)在视图寻呼机的setOnPageChangeListener中,在onPageSelected方法中,执行:
if (position == 0) {
adapter.notifyDataSetChanged();
}
其中position是要刷新其视图的片段的位置,而适配器是先前定义的适配器。
3)在自定义视图中,pager类覆盖此方法:
@Override
public int getItemPosition(Object object) {
if (object instanceof UpdateableFragment) {
((UpdateableFragment) object).update();
}
//don't return POSITION_NONE, avoid fragment recreation.
return super.getItemPosition(object);
}
4)在要刷新的片段中实现UpdateableFragment(示例中的位置0):
public class HomeFragment extends Fragment implements UpdateableFragment {
并在UpdateableFragment实现中添加此方法:
@Override
public void update() {
// Do your update code here
}
5)这就是全部。请享用。希望这可以提供帮助。