工具栏中带有汉堡图标和返回箭头动画,用于两个NavigationView吗?

3
请先看下面的截图,只关注汉堡图标,这样你就能快速了解我想要什么。
首先,我已经成功地将导航视图(抽屉)实现到了左右两侧,以便用户可以从左右两侧打开两个抽屉。
现在我的问题是:我想要带有动画效果的汉堡图标,可以在两侧都显示。我已经在工具栏的左侧实现了汉堡图标,这很容易并且是默认的。但是现在我也想在右侧显示它,并带有箭头动画。
以下是需要完成的任务:
1. 点击左侧汉堡图标打开左侧抽屉。(已完成) 2. 点击右侧汉堡图标打开右侧抽屉。(尚未完成)
所以,是否可能在单个工具栏上拥有两个汉堡图标呢?
注意:两个抽屉都可以通过手势打开,这一点我没有问题。

1
不行。绝对不行。为什么? - Benito Bertoli
我只想要它。这是应用程序的要求。 - Moinkhan
左侧抽屉通常用于导航。右侧抽屉可用于内容。您不希望使用两个导航抽屉来混淆用户。 - Benito Bertoli
3
汉语翻译:汉堡图标用于导航。您应该使用与内容相关的其他图标。 - Benito Bertoli
2
你不应该使用同一个图标来代表两个不同的操作,这会令人困惑且不合逻辑。 - Marcin Orlowski
显示剩余4条评论
3个回答

2

我认为你可以使用FrameLayout实现。

现在考虑以下布局:

<FrameLayout>
     <Toolbar />
     <Toolbar layout_direction="right" />
</FrameLayout>

使用此方法,两个工具栏会相互叠加。将抽屉图标放在两个工具栏中,第二个工具栏将呈现在右侧,因为我们已将布局方向指定为右侧。
注意:将上方的工具栏设置为透明。
希望这可以帮助你。

1
你可以编写动画,使你的右侧图标像这样移动。
在打开抽屉时,从x到x-someDelta。
在关闭抽屉时,从x-somedelta到x。
编辑:
你可以使用ObjectAnimator及其超类Value Animator。
你可以这样做。
ObjectAnimator anim = ObjectAnimator.ofFloat(rightIcon, "translationX", 0,50); 

anim.start();

使用布尔值并在对象动画器中使用50,0切换它以向后滑动

此外,您可以使用setDuration方法设置动画完成所需的时间长度


谢谢你的努力。但是我想要 Android Material 的默认汉堡图标。 - Moinkhan

1
我相信 SlidingMenu 库是你所需要的。它有左侧和右侧两种模式。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接