47

次のメニュー項目があります。

<item
   android:id="@+id/lock"
   android:checkable="true"
   android:title="@string/lock" >
   <menu>
       <item
          android:id="@+id/block_mess"
          android:checked="true"
          android:icon="@drawable/chantinnhan"
          android:title="@string/block_mess_string" />
        <item
            android:id="@+id/block_call"
            android:checked="false"
            android:icon="@drawable/chancuocgoi"
            android:title="@string/block_call_string" />
        <item
            android:id="@+id/lock_app"
            android:checked="false"
            android:icon="@drawable/khoaungdung"
            android:title="@string/lock_app_string" />
   </menu>
</item>

...まだまだありますが、本当に長いです

しかし、アイコンは本当に小さいです (解像度が 256x256 であっても)。大きくしたい!これは可能ですか?

スクリーンショットは次のとおりです。

ここに画像の説明を入力

編集: OK、Google がアイコンのサイズを「ロック」していることはわかっています。しかし、そのロックを「バイパス」して何かをカスタマイズできるかどうかを知りたいですか?

4

5 に答える 5

104

design_navigation_icon_size属性をオーバーライドすることで、navigationView アイコンのサイズを変更できます。次元に入れることができます。プライベート属性をオーバーライドしているため、含める必要がありますtools:override="true"

<dimen name="design_navigation_icon_size" tools:override="true">40dp</dimen>
于 2016-08-16T04:39:24.170 に答える
10

アイコンのサイズを決定する主なものは次元です: navigation_icon_sizeNavigationMenuItemViewクラスを見てください:

 public NavigationMenuItemView(Context context, AttributeSet attrs, int defStyleAttr) {
    super(context, attrs, defStyleAttr);
    this.mIconSize = context.getResources().getDimensionPixelSize(dimen.navigation_icon_size);
}

したがって、dimens ファイルのプロパティをオーバーライドするだけです。

例えば:

<dimen name="navigation_icon_size">48dp</dimen>

そのコードを dimens ファイルに追加すると、サイズが変更されていることがわかります。

前:

ここに画像の説明を入力

後:

ここに画像の説明を入力

于 2015-12-04T06:33:40.387 に答える
8

Google自身が設定したデザイン ドキュメントによると、アイコンは に設定する必要があります14sp。これはすべてのアプリで使用される標準であるため、この推奨事項に従うことをお勧めします。おっしゃる通り、ナビゲーション ドロワー アイコンを開発する場合、これは標準ではないため、ナビゲーション ドロワーに大きなアイコンがあるアプリはありません。

ここに画像の説明を入力

于 2015-11-27T14:37:49.620 に答える