首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PopupMenu -自定义主题

PopupMenu -自定义主题
EN

Stack Overflow用户
提问于 2016-02-25 13:10:50
回答 3查看 1.2K关注 0票数 0

我想创建一个自定义PopupMenu (能够更改文本颜色、背景和图标)。理想的行为将类似于这个gfy (取自Solid Explorer):

https://gfycat.com/JealousMeanHorsefly

你认为是PopupMenu还是ListPopupWindow?我试图将PopupMenu的样式设置为here,但我只改变了背景色(哦,阴影消失了)。有什么想法如何创建这样一个美丽的对话框吗?

EN

回答 3

Stack Overflow用户

发布于 2016-02-25 13:29:48

我认为最好的方法是通过创建一个自定义对话框来实现它,然后设置它的内容视图。

代码语言:javascript
复制
          Dialog d = new Dialog(hostActivity,R.style.customOne);
          d.setContentView(yourPopupView);
          d.show();

您需要更改对话框的样式,如下所示

代码语言:javascript
复制
     <style name="customOne" parent="@android:style/Theme.Dialog">
    <item name="android:windowFrame">@null</item>
    <item name="android:windowNoTitle">true</item>
    <item name="android:windowBackground">@android:color/transparent</item>
    <item name="android:windowIsFloating">false</item>
    <item name="android:windowContentOverlay">@null</item>
    <item name="android:windowSoftInputMode">adjustResize</item>
    <item name="android:windowCloseOnTouchOutside">false</item>
    </style>

希望这能帮上忙。

票数 2
EN

Stack Overflow用户

发布于 2016-02-25 13:16:33

查看这个库:https://github.com/shehabic/Droppy

它允许您创建自定义弹出/下拉菜单。

票数 0
EN

Stack Overflow用户

发布于 2016-02-25 13:38:16

代码语言:javascript
复制
<item name="android:popupMenuStyle">@style/MyPopupMenu</item>
<item name="textAppearanceLargePopupMenu">@style/popupText</item>
<item name="textAppearanceSmallPopupMenu">@style/popupTextSmall</item>

在基础theme.You中添加上面的字段可以进一步定制以下样式的文本。

代码语言:javascript
复制
<style name="popupText" parent="TextAppearance.AppCompat.Light.Widget.PopupMenu.Large">
    <item name="android:textColor">@color/White</item>
</style>

<style name="MyPopupMenu" parent="Widget.AppCompat.PopupMenu">
    <item name="android:popupBackground">@color/popupbackgroundColor</item>
</style>
<style name="popupTextSmall" parent="TextAppearance.AppCompat.Light.Widget.PopupMenu.Small">
    <item name="android:textColor">@color/White</item>
</style>

还请参考此answer以弹出窗口显示图像。

还可以在工具栏中设置PopupTheme。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35628276

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档