android popupmenu 样式
时间: 2023-07-22 21:22:28 浏览: 98
Android PopupMenu 的样式可以通过定义自定义的 PopupMenu 样式来实现。可以使用以下步骤来定义自定义的 PopupMenu 样式:
1. 在 res/values 目录下创建一个名为 styles.xml 的文件。
2. 在 styles.xml 文件中定义一个新的样式,例如:
```
<style name="PopupMenuStyle" parent="@android:style/Widget.PopupMenu">
<item name="android:popupBackground">@drawable/popup_background</item>
<item name="android:textColor">@color/popup_text_color</item>
</style>
```
这个样式继承自 Android 内置的 Widget.PopupMenu 样式,并定义了两个属性:popupBackground 和 textColor。这两个属性可以根据需要进行调整。
3. 在 styles.xml 文件中定义一个新的主题,例如:
```
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
<item name="android:popupMenuStyle">@style/PopupMenuStyle</item>
</style>
```
这个主题继承自 AppCompat.Light.DarkActionBar 主题,并定义了一个 popupMenuStyle 属性,将它的值设置为之前定义的 PopupMenu 样式。
4. 在 AndroidManifest.xml 文件中将应用程序的主题设置为定义的主题,例如:
```
<application
android:theme="@style/AppTheme">
...
</application>
```
通过以上步骤,就可以定义自定义的 PopupMenu 样式。在 PopupMenu 中使用该样式时,只需要在代码中调用 PopupMenu 的 setPopupStyle 方法,将自定义的样式作为参数传入即可。例如:
```
PopupMenu popupMenu = new PopupMenu(context, anchorView);
popupMenu.setPopupStyle(R.style.PopupMenuStyle);
popupMenu.inflate(R.menu.popup_menu);
popupMenu.show();
```
阅读全文