在本机菜单的菜单项之间显示分隔线

时间:2017-04-07 09:08:41

标签: android menuitem divider overflow-menu

Show a horizontal divider in between menu titles

我想编辑菜单标题之间的水平线,我指的是很多解决方案,但没有任何一个能找到我的解决方案。请帮我找到解决方案

<menu
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<group android:id="@+id/grp1" android:checkableBehavior="single" >
    <item
        android:id="@+id/contact"
        android:icon="@mipmap/contact"
        android:title="Contact Us"
        android:checked="true"
        app:showAsAction="collapseActionView"/>
</group>
<group android:id="@+id/grp2" android:checkableBehavior="single" >
    <item
        android:id="@+id/latest"
        android:icon="@mipmap/latest"
        android:title="Latest ***"
        android:checked="true"
        app:showAsAction="collapseActionView"/>
</group>
<group android:id="@+id/grp3" android:checkableBehavior="single" >
<item
    android:id="@+id/my_picture"
    android:icon="@mipmap/my_picture"
    android:checked="true"
    android:title="My *** Pictures"
    app:showAsAction="collapseActionView"/>

提前谢谢你:)

3 个答案:

答案 0 :(得分:0)

您应该使用动作布局

<menu xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    tools:context=".LandingActivity">
    <item
        android:id="@+id/action_cart"
        android:title="cart"
        android:actionLayout="@layout/cart_update_count"
        android:icon="@drawable/shape_notification"
        app:showAsAction="always"/>
</menu>

然后动作布局可以使用分隔符的文本视图。

<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="wrap_content"
    android:layout_height="match_parent"
    android:orientation="vertical">

    <View
        android:id="@+id/divider"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:background="@drawable/divider"/>

    <TextView
        android:id="@android:id/text"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:background="?android:attr/selectableItemBackground"
        android:gravity="center_vertical"          
        android:textAppearance="?attr/textAppearanceListItemSmall"/>

</LinearLayout>

然后你可以在代码中添加点击监听器

答案 1 :(得分:0)

自定义AppTheme。试试这个。

TextView

答案 2 :(得分:0)

if (in_array($this->request->action, ['cart'])) {
    $id = $this->request->getParam('pass'); //use $this->request->param('pass') for CakePHP 3.3.x and below.
    $booking = $this->Payments->Bookings->get($id,[
        'contain' => ['Artists']
    ]);
    if ($booking->artist->user_id == $user['id']) {
        return true;
    }
}

试试这个