Android弹出菜单分隔线的样式
我在我的应用程序中使用了两个Android弹出菜单分隔线的样式,android,android-layout,customization,divider,android-popupwindow,Android,Android Layout,Customization,Divider,Android Popupwindow,我在我的应用程序中使用了两个弹出菜单s,它们都按预期工作 但是我想用白线分隔各个项目,但是我找不到我应该在哪里设置这个。我希望能够访问底层的ListView,但这似乎是不可能的。我也看不到与分隔线相关的样式项 这是否可能,我应该在哪里/如何设置它?我已经能够使用以下技术(基于此答案的线索)更新弹出菜单上的分隔颜色 创建一个样式如下 <style name="popupMenuStyle" > <item name="android:textColor">#fff
弹出菜单
s,它们都按预期工作
但是我想用白线分隔各个项目,但是我找不到我应该在哪里设置这个。我希望能够访问底层的ListView,但这似乎是不可能的。我也看不到与分隔线相关的样式项
这是否可能,我应该在哪里/如何设置它?我已经能够使用以下技术(基于此答案的线索)更新弹出菜单上的分隔颜色 创建一个样式如下
<style name="popupMenuStyle" >
<item name="android:textColor">#ffffff</item>
<item name="android:itemBackground">#000000</item>
<item name="android:divider">#eaeaea</item>
<item name="android:dividerHeight">1dp</item>
</style>
这确实显示了一条分界线,但菜单的高度似乎没有正确计算以包括新的分界线,并且显示了一个垂直滚动条
如果有人知道原因,请添加评论这就是我如何做到的。色库背景是改变分线器的颜色
<style name="PopupMenu">
<item name="android:itemBackground">@color/background_medium_gray</item>
<item name="android:background">@android:color/transparent</item>
<item name="android:textColor">@android:color/black</item>
<item name="android:colorBackground">@color/BackgroundGray</item>
<item name="android:dividerHeight">1dp</item>
</style>
Context context = new ContextThemeWrapper(getActivity(), R.style.PopupMenu);
final PopupMenu popupMenu = new PopupMenu(context, view);
final MenuInflater menuInflater = popupMenu.getMenuInflater();
@颜色/背景\中等\灰色
@android:彩色/透明
@android:彩色/黑色
@颜色/背景灰
1dp
Context Context=new ContextThemeWrapper(getActivity(),R.style.PopupMenu);
最终弹出菜单弹出菜单=新弹出菜单(上下文、视图);
final MenuInflater MenuInflater=popupMenu.getMenuInflater();
这对@flexicoder有帮助吗@garfbradaz不,这是文本而不是分隔线Hey@Flexicoder你能试着添加分隔线和分隔线吗?如下图所示:#ffffff#000000@style/DropDown.Theme@color/your#color 1dp
我可以用这种方式摆脱垂直滚动条。为什么它在Android 6.0上对我不起作用。唯一对我有效的是设置文本颜色和背景,但分割器不显示…根据我们的用户体验,我必须使用白色作为背景,不幸的是,分割器也使用白色背景。当我将菜单背景更改为任何其他颜色时,我会看到分隔符,但当它为白色时,我看不到分隔符。。。那么,如何更改分隔器的颜色@android:color/holo_red_dark不起作用…@Vincy-听起来你需要问一个新问题question@pablogeorge他的回答为我解决了这个问题。非常感谢两位!我想知道你是否知道如何设置分隔符宽度,比如总菜单宽度的80%;
<style name="PopupMenu">
<item name="android:itemBackground">@color/background_medium_gray</item>
<item name="android:background">@android:color/transparent</item>
<item name="android:textColor">@android:color/black</item>
<item name="android:colorBackground">@color/BackgroundGray</item>
<item name="android:dividerHeight">1dp</item>
</style>
Context context = new ContextThemeWrapper(getActivity(), R.style.PopupMenu);
final PopupMenu popupMenu = new PopupMenu(context, view);
final MenuInflater menuInflater = popupMenu.getMenuInflater();