簡體   English   中英

Android-底部導航菜單更改圖標圖像

[英]Android - Bottom Navigation Menu change icon image

選擇后,我需要更改底部導航選項卡的圖標菜單。 我找到了使用item.setIcon(R.drawable.latest_icon_sel_green);選擇圖像時更改圖像的方法item.setIcon(R.drawable.latest_icon_sel_green); 但是,現在我需要在取消選擇圖像時對其進行更改。 我該怎么辦?

navigation.setOnNavigationItemSelectedListener(new BottomNavigationView.OnNavigationItemSelectedListener() {
            @Override
            public boolean onNavigationItemSelected(@NonNull MenuItem item) {
                switch (item.getItemId()) {
                    case R.id.navigation_latest:
                        viewPager.setCurrentItem(0);
                        item.setIcon(R.drawable.latest_icon_sel_green);

                        return true;
                    case R.id.navigation_news:
                        viewPager.setCurrentItem(1);
                        item.setIcon(R.drawable.news_icon_sel_green);

                        return true;
                    case R.id.navigation_user:
                        viewPager.setCurrentItem(2);
                        item.setIcon(R.drawable.user_icon_sel_green);

                        return true;
                    case R.id.navigation_upload:
                        viewPager.setCurrentItem(3);
                        item.setIcon(R.drawable.upload_icon_sel_green);

                        return true;
                    case R.id.navigation_share:
                        viewPager.setCurrentItem(4);
                        item.setIcon(R.drawable.share_icon_sel_green);

                        return true;
                }
                return false;
            }
        });

只需使用如下所示的xml創建自定義可繪制對象,然后將其添加到您的導航項目中即可,無需選擇setIcon,

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_selected="true" android:drawable="@drawable/share_icon_sel_green"/>
    <item android:drawable="@drawable/share_icon_unsel_green"/>
</selector> 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM