0
我有以下代碼,它是帶有片段的選項卡布局。我想擺脫tab/pager並只保留1個片段(StickyQuestionDetailsFragment)並讓它顯示活動的全部寬度和高度。如何將選項卡片段活動轉換爲沒有選項卡的正常活動
我已經嘗試從我的活動中打開片段,但我得到了鑄造異常。
public class QuestionDetails extends SherlockFragmentActivity implements ActionBar.TabListener {
ViewPager mPager;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.question_details);
PagerAdapter adapter = new FragmentStatePagerAdapter(getSupportFragmentManager()) {
@Override
public Fragment getItem(int position) {
switch (position) {
case 1:
return new QuickReturnFragment();
case 0:
return new StickyQuestionDetailsFragment();
}
return null;
}
@Override
public int getCount() {
return 1;//2
}
@Override
public CharSequence getPageTitle(int position) {
switch (position) {
case 0:
return "Question";
case 1:
return "User";
}
return null;
}
};
mPager = (ViewPager) findViewById(R.id.pager);
mPager.setAdapter(adapter);
mPager.setOnPageChangeListener(new ViewPager.SimpleOnPageChangeListener() {
@Override
public void onPageSelected(int position) {
getActionBar().setSelectedNavigationItem(position);
}
});
mPager.setPageMargin(getResources().getDimensionPixelSize(R.dimen.page_margin));
getActionBar().setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);
for (int position = 0; position < adapter.getCount(); position++) {
getActionBar().addTab(getActionBar().newTab()
.setText(adapter.getPageTitle(position))
.setTabListener(this));
}
getActionBar().setDisplayShowHomeEnabled(false);
getActionBar().setDisplayShowTitleEnabled(false);
}
@Override
public void onTabSelected(ActionBar.Tab tab, FragmentTransaction fragmentTransaction) {
mPager.setCurrentItem(tab.getPosition());
}
@Override
public void onTabUnselected(ActionBar.Tab tab, FragmentTransaction fragmentTransaction) {
}
@Override
public void onTabReselected(ActionBar.Tab tab, FragmentTransaction fragmentTransaction) {
}
}
還爲動作條下拉列表導航模式。 –