[解決済み] ナビゲーションドローワのアイテムアイコンが元の色で表示されない
2022-05-06 13:32:07
質問
ナビゲーションドローワーのメニューの項目の横にアイコンを表示させようとしているのですが、なぜかアイコンが元の色(茶色)ではなく、いつもグレーで表示されます。これを防いで、アイコンを元の色で表示させる方法はありますか?
MainActivity.java
public class MainActivity extends AppCompatActivity {
private DrawerLayout mDrawerLayout;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mDrawerLayout = (DrawerLayout) findViewById(R.id.drawer_layout);
NavigationView navigationView = (NavigationView) findViewById(R.id.nav_view);
if (navigationView != null) {
setupDrawerContent(navigationView);
}
}
private void setupDrawerContent(NavigationView navigationView) {
navigationView.setNavigationItemSelectedListener(
new NavigationView.OnNavigationItemSelectedListener() {
@Override
public boolean onNavigationItemSelected(MenuItem menuItem) {
mDrawerLayout.closeDrawers();
return true;
}
});
}
}
drawer_view.xml
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item android:title="Section">
<menu>
<item
android:id="@+id/navigation_item_1"
android:icon="@drawable/ic_browncircle"
android:title="Sub item 1" />
</menu>
</item>
</menu>
<イグ
解決方法は?
ここに答えがありました。 https://stackoverflow.com/a/30632980/875249
リンクを回避する方法はとても簡単です。
mNavigationView.setItemIconTintList(null);
これは、すべての状態ベースの色合いを無効にしますが、独自のリストを指定することもできます。 私はこれでうまくいきました。
カラーステートリストを作成するための詳細については、こちらをご覧ください。 http://developer.android.com/reference/android/content/res/ColorStateList.html
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_checked="true" android:color="@color/primary" />
<item android:state_checked="false" android:color="@android:color/white" />
</selector>
関連
-
eclipse で「アクセス制限: タイプ 'HttpServer' は API ではありません」というプロンプトが表示される。
-
jd-gui Java Exceptionが発生しました。
-
アクセス制限です。タイプ 'Application' は API ではありません。
-
サーブレットクラスのインスタンス化エラーの解決法
-
エラーの解決方法 jarfile XXX.jarにアクセスできません。
-
spring-boot 401 このリソースにアクセスするには完全な認証が必要です エラー解決
-
アイデア Springboot Web プロジェクトを jar にパッケージ化する場合、Error: 無効または破損した jarfile x.jar 解決策
-
Javaエラーメッセージがenclosingクラスでない
-
JSPで「リストが型解決できない!」の解決方法
-
maven プラグイン エラー プラグインの実行は、ライフサイクル構成ソリューションの対象外です。
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
java の例外が発生しました java
-
をインスタンス化することができません。
-
スキャナは、タイプに解決することはできません最もルーキー初心者の質問
-
Enumとの組み合わせでswitchの使い方を一度覚えるために必要な定数式
-
eclipse の実行時に java 仮想マシンが見つからなかった
-
Spring BootのテストメソッドFailed to load ApplicationContextの問題を解決する
-
リソースの読み込みに失敗しました。サーバーはステータス500(内部サーバーエラー)で応答しました。
-
xxx:jarのアーティファクトディスクリプタの読み込みに失敗した問題は解決しました。
-
が 'X-Frame-Options' を 'deny' に設定しているため、フレーム内にある。
-
このラインで複数のマーカーを解決する方法