我在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
函数中完成它。
谢谢你的帮助
答案 0 :(得分:0)
动作栏实际上已在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我希望这会对你有所帮助
答案 1 :(得分:0)
声明全局变量private Menu menu;
在你的onCreateOptionsMenu()
中 this.menu = menu;
然后在OptionsItemSelected中
menu.getItem(0).setIcon(ResourcesCompat.getDrawable(getResources(),R.drawable.ic_launcher,null));