如何区分基于 Fragment 的 SearchView 提交操作?

How to differentiate action for SearchView submit based on Fragment?

我的应用程序中有多个片段。我想为可能的应用程序添加搜索功能。当我在工具栏中添加搜索视图时,侦听器位于 MainActivity 中。问题是当我提交查询时,每个片段的操作都是相同的。我可以区分每个片段的动作吗? 怎么做?

首先,我猜你已经通过菜单在Activity中添加了SearchView

如果是这样,那么您可以在每个片段而不是 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);
}