android popupmenu 样式
时间: 2023-07-22 21:24:34 浏览: 81
Android PopupMenu 样式可以通过自定义布局文件来实现。以下是一个简单的例子:
首先,在 res/layout 文件夹下创建一个新的布局文件,例如 popup_menu.xml,然后添加以下代码:
```xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical"
android:background="@android:color/white"
android:padding="8dp">
<TextView
android:id="@+id/item1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="8dp"
android:textColor="@android:color/black"
android:text="Item 1"/>
<TextView
android:id="@+id/item2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="8dp"
android:textColor="@android:color/black"
android:text="Item 2"/>
<TextView
android:id="@+id/item3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="8dp"
android:textColor="@android:color/black"
android:text="Item 3"/>
</LinearLayout>
```
然后在你的 Activity 中,使用以下代码来创建 PopupMenu 并设置自定义布局文件:
```java
PopupMenu popupMenu = new PopupMenu(this, view);
// 设置自定义布局文件
popupMenu.setContentView(R.layout.popup_menu);
// 获取布局文件中的 TextView
TextView item1 = popupMenu.getContentView().findViewById(R.id.item1);
TextView item2 = popupMenu.getContentView().findViewById(R.id.item2);
TextView item3 = popupMenu.getContentView().findViewById(R.id.item3);
// 设置 TextView 的点击事件
item1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// 处理点击事件
popupMenu.dismiss();
}
});
item2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// 处理点击事件
popupMenu.dismiss();
}
});
item3.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// 处理点击事件
popupMenu.dismiss();
}
});
// 显示 PopupMenu
popupMenu.show();
```
这样就可以自定义 PopupMenu 的样式了。你可以根据自己的需求修改布局文件以及设置点击事件。