带有 SlidingMenu 的片段中的 ViewPager
Posted
技术标签:
【中文标题】带有 SlidingMenu 的片段中的 ViewPager【英文标题】:ViewPager in Fragment with SlidingMenu 【发布时间】:2012-12-09 21:29:32 【问题描述】:我想知道一般方法是如何在 SlidingMenu 的帮助下在 Fragment 中显示 ViewPager: https://github.com/jfeinstein10/SlidingMenu
有两个示例,第一个是具有工作菜单的 ResponsiveUI 示例(它会更改鸟类的图片),但是,我不知道如何将其成功更改为显示不同的 ViewPager。
另一个示例是 ViewPager 示例。它创建了一个 ViewPager 来在颜色之间滑动,但是,这并没有一个有效的滑动菜单。
真的有可能吗?
我试图用 ViewPagerFragment 简单地替换内容
mContent = new ViewPagerFragment();
getSupportFragmentManager()
.beginTransaction()
.replace(R.id.content_frame, mContent)
.commit();
但我收到以下错误:
java.lang.IllegalStateException: Recursive entry to executePendingTransactions
在此处完成 logcat:http://pastebin.com/aD2BSAja
【问题讨论】:
你能解决你的问题吗? 【参考方案1】:public class MainActivity extends SlidingFragmentActivity
ViewPager mViewPager;
FragmentPagerAdapter mPagerAdapter;
protected ListFragment mFrag;
@Override
public void onCreate(Bundle savedInstanceState)
super.onCreate(savedInstanceState);
setContentView(R.layout.view_pager_and_titles);
// set the Behind View
setBehindContentView(R.layout.menu_frame);
FragmentTransaction t = this.getSupportFragmentManager()
.beginTransaction();
mFrag = new SampleListFragment();
t.replace(R.id.menu_frame, mFrag);
t.commit();
// customize the SlidingMenu
SlidingMenu sm = getSlidingMenu();
sm.setShadowWidthRes(R.dimen.shadow_width);
sm.setShadowDrawable(R.drawable.shadow);
sm.setBehindOffsetRes(R.dimen.actionbar_home_width);
setSlidingActionBarEnabled(true);
//ViewPager adapter
mPagerAdapter = new FragmentPagerAdapter(getSupportFragmentManager());
final ActionBar mActionBar = getSupportActionBar();
mActionBar.setDisplayHomeAsUpEnabled(true);
mViewPager = (ViewPager) findViewById(R.id.pager);
mViewPager.setAdapter(mPagerAdapter);
@Override
public boolean onOptionsItemSelected(MenuItem item)
switch (item.getItemId())
case android.R.id.home:
toggle();
return true;
return super.onOptionsItemSelected(item);
【讨论】:
以上是关于带有 SlidingMenu 的片段中的 ViewPager的主要内容,如果未能解决你的问题,请参考以下文章