当我尝试在 Eclipse 上使用https://developer.android.com/reference/android/support/v4/view/ViewPager.html运行示例时,模拟器显示错误对话框。
这是LogCat:
我只是不知道为什么它无法运行。我在 Eclipse 中构建项目并复制示例代码,我还将 Android API 级别设置为 11。看起来一切正常。
当我双击 LogCat 的最后一行时:
at com.lanz.xbp2v4.ActionBarTabsPage.onCreate.java:37
它重定向到 onCreate 方法中包含的代码:
bar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);
所以我认为这部分代码可能有问题,希望有人能帮助我!XD
onCreate 方法中的代码:
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
mViewPager = new ViewPager(this);
mViewPager.setId(R.id.pager);
requestWindowFeature(Window.FEATURE_NO_TITLE);
setContentView(mViewPager);
// Full Screen
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);
final ActionBar bar = getActionBar();
bar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);
bar.setDisplayOptions(0, ActionBar.DISPLAY_SHOW_TITLE);
mTabsAdapter = new TabsAdapter(this, mViewPager);
mTabsAdapter.addTab(bar.newTab().setText("Simple").setTabListener((TabListener) this),
IndexTab.class, null);
mTabsAdapter.addTab(bar.newTab().setText("List").setTabListener((TabListener) this),
Tab2.class, null);
mTabsAdapter.addTab(bar.newTab().setText("Cursor").setTabListener((TabListener) this),
Tab3.class, null);
if (savedInstanceState != null) {
bar.setSelectedNavigationItem(savedInstanceState.getInt("tab", 0));
}
}
我已经修复了上面的问题,但是还是不行。此时我运行示例应用程序,LogCat 显示:
它重定向到getItem()
方法中包含的代码:
@Override
public Fragment getItem(int position) {
TabInfo info = mTabs.get(position);
Fragment fragment=Fragment.instantiate(mContext, info.clss.getName(), info.args);
return fragment;
}
任何人都可以使用Android 开发人员 ViewPager运行示例代码吗?