Android onQueryTextChange不显示UI更改
创始人
2024-08-14 21:30:15
0

在Android中,onQueryTextChange()方法是SearchView.OnQueryTextListener接口的一个回调方法。当搜索文本发生变化时,该方法会被调用。

如果你在onQueryTextChange()方法中做了UI更改,但是没有显示出来,可能有以下几个原因:

  1. 你没有调用invalidateOptionsMenu()方法:如果你在onCreateOptionsMenu()方法中创建了SearchView,并且想要在onQueryTextChange()方法中更新UI,你需要在onQueryTextChange()方法中调用invalidateOptionsMenu()方法来重新创建菜单。这样会触发onCreateOptionsMenu()方法的重新调用,从而显示出UI更改。

示例代码:

@Override
public boolean onQueryTextChange(String newText) {
    // 在这里更新UI

    // 调用invalidateOptionsMenu()方法重新创建菜单
    getActivity().invalidateOptionsMenu();

    return true;
}
  1. 你没有正确设置SearchView的监听器:在onCreateOptionsMenu()方法中,你需要为SearchView设置一个监听器,以便在搜索文本发生变化时得到通知。如果你没有正确设置监听器,onQueryTextChange()方法就不会被调用。

示例代码:

@Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
    inflater.inflate(R.menu.menu_main, menu);

    // 获取SearchView
    MenuItem searchItem = menu.findItem(R.id.action_search);
    SearchView searchView = (SearchView) searchItem.getActionView();

    // 设置监听器
    searchView.setOnQueryTextListener(new SearchView.OnQueryTextListener() {
        @Override
        public boolean onQueryTextSubmit(String query) {
            return false;
        }

        @Override
        public boolean onQueryTextChange(String newText) {
            // 在这里更新UI

            return true;
        }
    });

    super.onCreateOptionsMenu(menu, inflater);
}

确保你按照上述步骤正确设置了SearchView的监听器,并且在onQueryTextChange()方法中调用了invalidateOptionsMenu()方法,就能正确显示UI更改了。

相关内容

热门资讯

黑科技科技(wepoke智能a... 黑科技科技(wepoke智能ai)wepower使用说明书(wepOkE)素来是真的有挂(确实有挂)...
黑科技模拟器(wepoke智能... WePoker透视辅助工具核心要点解析‌,黑科技模拟器(wepoke智能ai)wepoke是机器发牌...
黑科技脚本(wepokeai代... 您好,这款游戏可以开挂的,确实是有挂的,需要了解加微【136704302】很多玩家在这款游戏中打牌都...
黑科技辅助挂(wepoke真的... 黑科技辅助挂(wepoke真的有挂)wepoke 软件(wEPOKE)固有真的有挂(有挂猫腻)-哔哩...
黑科技辅助挂(wepoke黑科... 黑科技辅助挂(wepoke黑科技)wepoke软件透明挂演示(wEpOke)一直真的有挂(真的有挂)...
黑科技app(wepoke真的... 此外,数据分析德州()辅助神器app还具备辅助透视行为开挂功能,通过对客户透明挂的深入研究,你可以了...
黑科技智能ai(wepoke辅... 黑科技智能ai(wepoke辅助插件)wepoke软件透明(WEPOke)先前是有挂(果真有挂)-哔...
黑科技模拟器(wepoke透明... 黑科技模拟器(wepoke透明黑科技)wepoke德州扑克用ai代打(WEPOKE)最初存在有挂(有...
黑科技插件(wepoke辅助插... 黑科技插件(wepoke辅助插件)wepoke软件透明(WEPOke)从来是真的有挂(有挂解惑)-哔...
黑科技美元局(wepoke智能... 黑科技美元局(wepoke智能ai)wepoke辅助真的假的(wepoKE)原先真的有挂(竟然有挂)...