最近几个月,Google发布了带导航抽屉的Youtube应用程序(AKA滑动菜单).
它有许多很酷的功能,我希望在我正在使用的应用程序上.
功能是:
触摸任何地方开始滑动.
切换模式时,在操作栏的"向上"按钮上移动图标.
滑动菜单时,内容区域(右侧区域,而不是菜单本身)保持而不是滚动.
操作栏保持而不是滚动.
内容区域(右侧区域,而不是菜单本身)在滚动时更改其颜色,而不是菜单本身.
这里是截图,以显示我在说什么:
滑动之前:

滑动后:

目前,我知道有两个主要的图书馆负责使用导航抽屉:
官方库和slidingMenu库都没有像youtube应用程序那样组合所有这些功能.
例如,官方图书馆没有能力#1(这就是我发布这个帖子的原因),所以我使用了slidingMenu库.
但是,slidingMenu库没有(或者它是)能力#2和#3.
两个库都没有足够的文档/示例可以做什么,因此很难使用它们或为它们添加新功能.
目前,我使用的是slidingMenu库,所以这是我准备slideMenu的代码:
activity.setBehindContentView(slidingMenuRootView);
mSlidingMenu = activity.getSlidingMenu();
mSlidingMenu.setShadowWidthRes(R.dimen.slidingmenu_shadow_width);
mSlidingMenu.setShadowDrawable(R.drawable.slidingmenu_shadow);
mSlidingMenu.setBehindOffsetRes(R.dimen.slidingmenu_offset);
mSlidingMenu.setFadeEnabled(true);
mSlidingMenu.setFadeDegree(1.0f);
mSlidingMenu.setTouchModeAbove(SlidingMenu.TOUCHMODE_FULLSCREEN);
activity.setSlidingActionBarEnabled(false);
Run Code Online (Sandbox Code Playgroud)
我如何让slideMenu(或导航抽屉)在youtube应用程序上运行,这意味着我提到的所有功能组合在一起?
编辑:使用menuDrawer库(这里是 github链接),我已经成功实现了我提到的所有功能.这是一个示例代码:
public class ActionBarSherlockSample extends SherlockActivity {
private MenuDrawer mDrawer;
@Override
protected void onCreate(final Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
getSupportActionBar();
mDrawer = MenuDrawer.attach(this, MenuDrawer.Type.OVERLAY);
final TextView menuView = new TextView(this);
menuView.setTextColor(0xFFFFFFFF);
menuView.setText("As the …Run Code Online (Sandbox Code Playgroud) android actionbarsherlock android-actionbar slidingmenu navigation-drawer
我正在制作一个视图和一个扩展SherlockMapActivity的活动,并使用SlidingMenu库使我的主视图像Google+一样滚动.我已经通过XML添加了SlidingMenu,我的视图滚动完美地显示隐藏的菜单,但它只滚动操作栏下方的视图.在Google+应用中,它还会滚动操作栏,我看到有一个功能可以让我的操作栏滑动启用,但它不起作用.
什么是使我的操作栏与完整视图一起滑动的最佳方法?也许我没有扩展正确的课程?
这是我将SlidingMenu添加到我的应用程序的方式:
XML文件:
<com.slidingmenu.lib.SlidingMenu
xmlns:sliding="http://schemas.android.com/apk/res-auto"
android:id="@+id/slidingmenulayout"
android:layout_width="match_parent"
android:layout_height="match_parent"
sliding:viewAbove="@layout/activity_main"
sliding:viewBehind="@layout/menu_desplegado"
sliding:behindOffset="120dip"
sliding:behindScrollScale="0.25"
/>
Run Code Online (Sandbox Code Playgroud)
这就是结果:
