我在内容页面中添加了工具栏项目:
<ContentPage.ToolbarItems>
<ToolbarItem IconImageSource="icon_dropdown.png"/>
</ContentPage.ToolbarItems>
我想拥有的是,当用户单击工具栏项目时,这样会弹出一个菜单。以向下滑动的方式显示动画,以显示内容/菜单项。
我一直在网上搜索,但是搜索到的关键字总是将我带到微调器,而对于C#和Xamarin Forms来说,这是我的新手,我不确定微调器是否仍然是我想要实现的目标,因为微调器看起来更多一个对话框。
Sample image of what I'm trying to do that I've photoshopped
非常感谢您的帮助。谢谢。
我进行了一些调查,找到了一种通过主题更改溢出popmenu位置的方法(如果需要的话,请在末尾附加代码),但是无法更改宽度以匹配整个屏幕,不确定是否使用Android在菜单上做了一些限制。
如果您需要与图片完全相同的下拉列表,则微调器也可能不是理想的选择,最好创建一个覆盖原始活动并自定义新活动布局的新活动,但不建议考虑性能。另外,您可以在earlier post中找到某些内容,看看是否有任何想法。
添加新样式:
<style name="OverflowMenuStyle" parent="@style/ThemeOverlay.AppCompat.Light">
<item name="overlapAnchor">false</item><!--not overlay the toolbar-->
<!--<item name="android:dropDownWidth">10dp</item> not work-->
<!--<item name="android:maxWidth">400dp</item> not work-->
<item name="android:paddingRight">0dp</item>
<!--dropDownVerticalOffset is the property you want to avoid overlay the toolbar-->
<item name="android:dropDownVerticalOffset">4dp</item>
<item name="android:dropDownHorizontalOffset">0dp</item>
<item name="android:popupBackground">#BFBFBF</item>
</style>
Android资源布局文件夹的Toolbar.xml,将popupTheme更改为:
android:popupTheme="@style/OverflowMenuStyle"
添加MainTheme.Base样式的项目:
<item name="actionOverflowMenuStyle">@style/OverflowMenuStyle</item>