android - android菜单项不会出现在顶栏上
问题描述
Toolbar toolbar = view.findViewById(R.id.toolbar);
((AppCompatActivity)getActivity()).setSupportActionBar(toolbar);
@Override
public void onCreateOptionsMenu(@NonNull @NotNull Menu menu, @NonNull @NotNull MenuInflater inflater) {
inflater.inflate(R.menu.menu,menu);
MenuItem searchItem = menu.findItem(R.id.action);
SearchView searchView = (SearchView) searchItem.getActionView();
searchView.setOnQueryTextListener(new SearchView.OnQueryTextListener() {
@Override
public boolean onQueryTextSubmit(String query) {
return false;
}
@Override
public boolean onQueryTextChange(String newText) {
adapter.getFilter().filter(newText);
return false;
}
});
<menu xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto">
<item
android:id="@+id/action"
android:icon="@android:drawable/ic_menu_search"
android:title="Search"
app:showAsAction="ifRoom|collapseActionView"
app:actionViewClass="androidx.appcompat.widget.SearchView" />
</menu>
<?xml version="1.0" encoding="utf-8"?>
<androidx.appcompat.widget.Toolbar xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/item"
android:elevation="4dp"
android:translationY="52dp"
android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar">
</androidx.appcompat.widget.Toolbar>
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout 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"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.example.gestion_actif.ActifActivity">
<include
android:id="@+id/include"
layout="@layout/activity_topbar"
tools:layout_editor_absoluteX="3dp" />
<include
android:id="@+id/toolbar"
layout="@layout/toolbar" />
我使用片段而不是活动..我的问题是工具栏出现了,但我在运行时没有找到菜单项。我应该写一个代码来在菜单和顶栏之间进行同步?我可以直接使用顶部栏和片段中的菜单吗?
解决方案
推荐阅读
- openshift - OpenShift 重建无法推送映像:连接被拒绝
- r - 单位(x,default.units)中的ggplot错误:'x'和'units'的长度必须> 0
- npm - 如何检查 npm 安装包的位置?
- angular-cli - 如何安装特定版本的 angular-cli
- javascript - 具有相同选项的 Jquery/Javascript 多选下拉菜单
- java - SERE0014:非法 HTML 字符 - 解析控制字符时出现十进制 129 异常
- macos - 可以从 dockerized Tshark 扫描网络吗?
- php - 下载文件在我的 Wordpress 网站中达到实际大小之前停止
- angular - 角度:从已解决的 Promise 中获取 httpClient.get 测试失败
- ckeditor - Typo3 8.7.x / CKEditor:如何覆盖下拉列表中标题的标签?