【发布时间】:2020-02-28 14:55:15
【问题描述】:
val menuitem=menuList!!.findItem(R.id.adres)
menuitem.setTitle("asdklzmfkldfvsas")
this.invalidateOptionsMenu()
Toast.makeText(this,menuitem.title.toString(),Toast.LENGTH_LONG).show()
override fun onCreateOptionsMenu(menu: Menu?): Boolean {
getMenuInflater().inflate(R.menu.gecmissiparis, menu);
this.menuList=menu
return super.onCreateOptionsMenu(menu)
}
这是我的代码。
在Toast 它说标题已更改但标题文本没有更改,或者当我尝试使其不可见时它不会不可见
我从另一个不在 mainactivity.xml 中的 xml 中获取 menu.xml,这是问题吗?如果是,我该如何解决?
这就是菜单 xml
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:android="http://schemas.android.com/apk/res/android"
>
<item
android:id="@+id/itemxd"
android:title="Item" />
<item
android:id="@+id/sipariscx"
android:title="Item"
>
<menu>
<item
android:id="@+id/adres"
android:title="czxzczxc" />
</menu>
</item>
<item android:title="siparis1">
<menu>
<item android:title="adres1" />
</menu>
</item>
</menu>
导航视图部分
<com.google.android.material.navigation.NavigationView
android:id="@+id/oldsip"
app:headerLayout="@layout/haderdeneme"
android:layout_width="wrap_content"
android:layout_height="match_parent"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:menu="@menu/gecmissiparis"
>
【问题讨论】:
-
文本的更改需要在 onCreateOptionsMenu 内部进行
-
试过了,没有任何变化
-
您确定
R.id.adres是您要更新的项目的 id 吗? -
是的,我仔细检查了我为xml编辑了帖子,你可以检查