8

現在、MenuItem にカスタム レイアウトを使用しています。

ここに画像の説明を入力

コードは基本的なものです:

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android" >

    <item
        android:id="@+id/menu_custom"
        android:actionLayout="@layout/menu_layout"
        android:showAsAction="always"/>

</menu>

ピクセル単位のアイコン サイズは Android のデザインとガイドラインに記載されていますが、このアイコンに使用する必要がある余白、パディング、幅、高さはわかりません。そのため、すべてのデバイスで適切に表示されます。

私の現在のレイアウト:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/searchProgressWrapper"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content" >


    <ImageButton
        android:id="@+id/ivfolder"
        android:layout_width="wrap_content"
        android:layout_height="fill_parent"
        android:layout_gravity="center"
        android:scaleType="fitCenter"
        android:background="@drawable/abs__item_background_holo_dark"
        android:src="@drawable/ic_menu_archive" />


</RelativeLayout>

大きな問題は、ご覧のとおり、アイコンの幅が完全に間違っていて、他の MenuItem とまったく似ていないことです。

4

2 に答える 2

16

android:minWidthあるべきであり56dipandroid:paddingBottomあるandroid:paddingTopべきです8dip。で見つかりました<sdk>/platforms/android-17/data/res/values/dimens.xml:

<!-- Minimum width for an action button in the menu area of an action bar -->
<dimen name="action_button_min_width">56dip</dimen>

<!-- Vertical padding around action bar icons. -->
<dimen name="action_bar_icon_vertical_padding">8dip</dimen>
于 2013-01-11T22:33:45.557 に答える