android - 如何根据 Fragment 区分 SearchView 提交的操作?
问题描述
我的应用程序中有多个片段。我想在可能的应用程序中添加搜索功能。当我在工具栏中添加搜索视图时,侦听器位于 MainActivity 中。问题是当我提交查询时,每个片段的操作都是相同的。我可以区分每个片段的动作吗?怎么做?
解决方案
首先,我猜你已经SearchView
通过菜单添加了in Activity。
如果是这样,那么您可以在每个片段中实现菜单而不是 Activity。然后您可以获得每个片段的搜索功能。
要启用Option Menu
片段,您必须onCreate
像下面这样覆盖:
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setHasOptionsMenu(true);
}
然后你必须
onCreateOptionsMenu
像下面这样膨胀你的菜单:
@Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
// TODO Add your menu entries here
super.onCreateOptionsMenu(menu, inflater);
}
推荐阅读
- codeigniter - 如何获取数据库codeigniter一列中的所有数据?
- c# - 子域作为查询字符串
- c# - 使用 MS Bot SDK 4 构建的 Bot 在闲置一小时或更长时间后仍可用于 Facebook 频道
- javascript - HTML 包含带有 jsx、es2017 标签和其他标签的脚本
- react-native - React Native 样式不适用于父视图?
- python - 带有 Tuple() 或 List[] Python 3 的 While 循环中的比较运算符
- java - 插页式广告关闭后如何执行操作?
- r - 如何将星期添加到日期列,其中的列只是一个数字
- javascript - 无法将“this”绑定到 AcquireTokenSilent - Azure AD MSAL 和 ReactJS 的回调函数
- c# - 如何为 body 模型上的属性提供自定义模型绑定器?