新的Facebook应用程序和它的导航太酷了。我只是想看看如何在我的应用程序中模仿它。

有人知道怎么实现吗?

点击左上角按钮,页面滑动,显示如下画面:

YouTube视频


当前回答

下面是官方android文档中的设计和开发指南,不需要添加非官方的外部库。只有android支持库可以做到。在这里找到链接。

设计和开发。

其他回答

对于信息,因为兼容性库开始1.6和这个facebook应用程序也运行在设备与Android 1.5,它不能用碎片。

The way you could do it, is : Create a "base" activity BaseMenuActivity where you put all the logic for the onItemClickListener for your menu list and defines the 2 animation ("open" and "close"). At the end/beginning of the animations, you show/hide the layout of the BaseMenuActivity (lets call it menu_layout). The layout for this activity is simple, its only a list with items + a transparent part at the right of your list. This part will be clickable and its width will be the same width as your "move button". With that, you'll be able to click on this layout to start the animation to let the content_layout slide to the left and take the whole screen. For each option (i.e. item of the menu list), you create a "ContentActivity" which extends the BaseMenuActivity. Then when you click on an item of the list, you start your ItemSelectedContentActivity with the menu visible (which you'll close as soon as your activity starts). The layouts for each ContentActivity are FrameLayout and includes the and . You just need to move the content_layout and make the menu_layout visible when you want.

这是一种方法,我希望我讲得够清楚了。

不能评论@Paul Grime给出的答案,无论如何,我已经在他的github项目上提交了闪烁问题的修复....

我会在这里发布修正,也许有人需要它。您只需要添加两行代码。动画下面的第一个。setAnimationListener电话:

anim.setFillAfter(true);

在app.layout()调用之后的第二个函数:

app.clearAnimation();

希望这对你有所帮助。

我在上面的回答中没有看到令人惊叹的SimonVT/android-menudrawer。这里有一个链接

https://github.com/SimonVT/android-menudrawer

它非常容易使用,你可以把它放在左边,右边,上面或下面。非常好的文档,包括示例代码和Apache 2.0许可证。

我在这里做一些大胆的猜测……

我假设它们有一个表示不可见的菜单的布局。当点击菜单按钮时,它们会在顶部移动布局/视图,并简单地启用菜单布局的可见性。我没有想过这会在视图中引起任何类型的z索引问题,或者他们如何控制它。

下面是官方android文档中的设计和开发指南,不需要添加非官方的外部库。只有android支持库可以做到。在这里找到链接。

设计和开发。