每当有片段更改时,NoActionBar主题就会每次调用onCreateOptionsMenu

问题描述

我有一个带有该活动的搜索栏,该活动有一个viewpager片段,与Android Example中的示例完全相同。我刚刚在搜索菜单添加

<?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"
    xmlns:tools="http://schemas.android.com/tools"
    tools:context="org.matrix.vector.activity.VectorHomeActivity">

    <item
        android:id="@+id/action_search"
        app:actionViewClass="androidx.appcompat.widget.SearchView"
        android:icon="@android:drawable/ic_search_category_default"
        android:title="search"
        app:showAsAction="always|collapseActionView" />
</menu>

添加到活动中

override fun onCreateOptionsMenu(menu: Menu): Boolean {
    menuInflater.inflate(R.menu.search,menu)
    return true
}

一切正常。但是,如果活动的样式是Light.DarkActionBar,然后搜索栏没有当标签改变或挥笔片段到下一首/上崩溃。但是,如果样式是Light.NoActionBar和我在活动XML添加一个工具栏,搜索栏总是崩溃每当标签的变化或viewpager的fragent。基本上,活动中的onCreateOptionsMenu会再次被调用,尽管所有内容都在一个片段中。如何停止这种行为?如果搜索栏已经展开,我想使其保持展开状态。

谢谢。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...