MyActivityListFragment不显示正确的onCreate(),但的onResume之后是确定()
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//list is global var
list = (MyListFragment) getFragmentManager().findFragmentById(com.myapp.R.id.mainActivity_myListFragment);
//add all objects to list
list.getListView().invalidateViews();
}
@Override
protected void onResume(){
super.onResume();
list.getListView().invalidateViews();
}
MyListFragment
@Override
public void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
MyAdapter adapter = new MyAdapter(new ArrayList());
setListAdapter(adapter);
}
public View getView(int position, View convertView, ViewGroup container) {
View view = super.getView(position, convertView, container);
TextView main = (TextView) view.findViewById(mylibs.common.R.list_main);
TextView sub = (TextView) view.findViewById(mylibs.common.R.list_sub);
ImageView image = (ImageView) view.findViewById(mylibs.common.R.list_image);
//set the View content here.
}
的问题是,我不能让第一次运行时能够正确显示。但是,如果onResume()
由Android调用,则全部显示完全正常。我该如何解决这个问题?
列表中的第一项始终显示正确,只有列表的其余部分有问题。
当调试getView()
onCreate()
后正确的,它清楚地表明,TextView的和ImageView的是由我想在getView()
方法的数据集,但它不显示和而不是显示我想要的数据,它示出了toString()
String
Object
这是在Adapter
为其中一个TextView和所有其他都留空。
你能提供'MyListFragment'的代码吗?你在哪里加载片段?在XML? –
是的,'MyListFragment'由XML加载。 – user3635998
那么'MyListFragment'的代码如何? –