So erhöhen Sie die menuitem-Breite in android, während mit Actionbar

Ich habe ein problem, erhöhen Sie die Breite der MenuItem-in der Action-bar, nehmen Sie die Feste Breite. Unten ist der Screenshot,

So erhöhen Sie die menuitem-Breite in android, während mit Actionbar

wollen und zu erreichen, die unten ein,

So erhöhen Sie die menuitem-Breite in android, während mit Actionbar

Unten ist der code:

search_layout.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="horizontal"
    android:background="@drawable/search_view_background"
    android:layout_width="match_parent"
    android:layout_marginTop="10dp"
    android:layout_marginBottom="10dp"
    android:layout_height="wrap_content">
    <TextView android:layout_width="0dp"
    android:padding="10dp"
    android:layout_weight="1"
    android:text="Search Product"
    android:textColor="@color/grey"
    android:gravity="center_vertical"
    android:drawableEnd="@drawable/ic_search"
    android:drawableRight="@drawable/ic_search"
    android:drawablePadding="20dp"
    android:textSize="@dimen/text_size_14sp"
    android:layout_height="match_parent"/>
</LinearLayout>

home_menu.xml

<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">

<item
android:id="@+id/search"
android:onClick="onClickSearchButton"
android:orderInCategory="1"
android:title="@string/Search"
app:actionLayout="@layout/search_layout"
app:showAsAction="always"/>
<item
android:id="@+id/action_cart"
android:icon="@drawable/ic_menu_cart"
android:orderInCategory="2"
android:title="@string/action_cart"
app:showAsAction="always"/>

<item
android:id="@+id/overflow"
android:icon="@drawable/ic_menu_notifications"
android:orderInCategory="3"
android:title="@string/overFlowMenu"
android:visible="false"
app:showAsAction="always"/>

Bitte geben Sie Ihren Vorschlag, wie dieses problem zu lösen.

Dank

 

One Reply
  1. 3

    Tat es mit einem Hack.

    Ich weiß, es ist nicht das beste, oder sogar eine gute Lösung, aber ich habe es mit einem hack.

    searchItem.getActionView().findViewById(R.id.text).setMinimumWidth(width);

    Können Sie eine bestimmte Breite, um die Ansicht so, dass Sie mindestens so viel Platz.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.