想象有一个MainActivity其中有一个ListView带有一个的ArrayAdapter。在属于MainActivityI 的视图中直接更新数据;例如,在我的PageAdapter课堂上:
@Override
public void finishUpdate(View arg0) {
ViewPager vp = (ViewPager) arg0;
if (vp.getCurrentItem() != this.current_item){
this.current_item = vp.getCurrentItem();
ContentStatus status;
switch(vp.getCurrentItem()){
case(0):
status = ContentStatus.NOTINTERESTING;
break;
case(2):
status = ContentStatus.INTERESTING;
break;
default:
status = ContentStatus.ACTIVE;
}
MainActivity.content.setItemStatus(content.identifier, status);
final Activity act = (Activity) this.context;
ArrayAdapter adapter = (ArrayAdapter) ((ListView) act.findViewById(R.id.view_sequence)).getAdapter();
adapter.notifyDataSetChanged();
}
}
我需要在另一个从 Activity 打开MainActivity并使用相同数据的活动中重现此代码,因为如果用户更改其他活动的一些数据然后关闭它并返回到 MainActivity 我必须重绘MainActivity视图。作为一种变体,我应该使用Activity'sonResume()方法来更新所有绑定到数据的视图吗?