簡體   English   中英

更改Android Studio中另一個菜單項的圖標

[英]Changing icon of another menuitem in Android Studio

我在ActionBar中有一個菜單。 “ gecerlidil”是菜單項,“ ingilizce”和“ turkce”是其子菜單。

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto">
    <item android:id="@+id/gecerlidil"
        android:icon="@drawable/ing"
        android:title="ingilizce"
        app:showAsAction="always">
    <menu>
        <item android:id="@+id/ingilizce"
            android:title="EN"
            android:icon="@drawable/ing"/>
        <item android:id="@+id/turkce"
            android:title="TR"
            android:icon="@drawable/tur"/>
    </menu>
        </item>
</menu>

當我單擊ingilizce菜單項或turkce菜單項gecerlidil菜單圖標將更改,但我無法成功。 我想我會在onOptionsItemSelected函數中做到這一點。 謝謝你的幫助

動作欄實際上已在android中棄用,所以我無法幫助您...

但是我建議您使用工具欄,就像操作欄一樣,但是您可以這樣做

<android.support.v7.widget.Toolbar
android:id="@+id/toolbar_main"
android:layout_height="wrap_content"
android:layout_width="match_parent"
android:fitsSystemWindows="true"
android:minHeight="?attr/actionBarSize">

<ImageView
    android:layout_width="156dp"
    android:layout_height="20dp"
    android:src="@drawable/icon"/>

</android.support.v7.widget.Toolbar>

然后您將使用菜單xml和onOptionsItemSelected()更改此ImageView或ImageButton

我希望這對您有幫助

聲明一個全局變量private Menu menu;

在您的onCreateOptionsMenu()中

this.menu = menu;

然后在OptionsItemSelected菜單中menu.getItem(0).setIcon(ResourcesCompat.getDrawable(getResources(),R.drawable.ic‌​_launcher,null));

暫無
暫無

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

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