我有一个视图寻呼机和3个片段。 我的应用程序适用于其中2个,但当我添加第三个片段时,它返回此错误:
12-17 14:11:30.969: ERROR/AndroidRuntime(7350): FATAL EXCEPTION: main
java.lang.RuntimeException: got asked about an unknown fragment
我的代码的一部分是这样的:
if (position == 0) {
if (mContactList == null)
mContactList = new ContactListFragment();
return mContactList;
} else if (position == 1) {
if (mContact == null)
mContact= new ContactFragment(); // my third fragment
return mContact ;
} else {
int positionMod = position - 2;
mCursor.moveToPosition(positionMod);
long contactChatId = mCursor.getLong(ChatView.CONTACT_ID_COLUMN);
String contactName = mCursor.getString(ChatView.USERNAME_COLUMN);
long providerId = mCursor.getLong(ChatView.PROVIDER_COLUMN);
return ChatViewFragment.newInstance(contactChatId, contactName, providerId);
}
答案 0 :(得分:0)
我认为您正在尝试从当前片段中引用其他片段。 尝试将setOffscreenPageLimit设置为2.如文档中所述:
将处于空闲状态的视图层次结构中当前页面任一侧应保留的页数设置为空闲状态。超出此限制的页面将在需要时从适配器重新创建。
使用此代码:
ViewPager mViewPager = (ViewPager) findViewById(R.id.historypager);
mViewPager.setOffscreenPageLimit(2);