我的工具栏中有两个SearchView,我想启用闪烁的光标,这样我就可以看到我正在输入的是哪个searchView。当我开始在SearchView中输入时,没有光标可用。当我输入更多内容然后触摸我输入的文本时,蓝色指向形状指向单击的文本位置 - 但不显示光标。
如何以编程方式启用黑色闪烁的矩形线光标?
我尝试过的一些事情:
设置我的searchView可能有问题吗? 继承我的setupSearchView代码:
SearchManager searchManager = (SearchManager)getActivity().getSystemService(Context.SEARCH_SERVICE);
searchView.setSearchableInfo(searchManager.getSearchableInfo(getActivity().getComponentName()));
searchView.setIconified(false);
searchView.setonActionExpanded();
searchView.setQueryHint(hint);
searchView.setFocusable(true);
答案 0 :(得分:0)
SearchView.SearchAutoComplete searchTextView = mSearchView.findViewById(R.id.search_src_text);
try {
Field mCursorDrawableRes = TextView.class.getDeclaredField("mCursorDrawableRes");
mCursorDrawableRes.setAccessible(true);
mCursorDrawableRes.set(searchTextView, 0);
//This sets the cursor resource ID to 0 or @null which will make it visible on white background
} catch (Exception e) {
e.printStackTrace();
}
答案 1 :(得分:0)
我也遇到了这个问题,并尝试了所有方法,直到更改了SearchView的InputType(TYPE_TEXT_VARIATION_NORMAL)。将InputType更改为TYPE_TEXT_VARIATION_FILTER后,我又回到了光标,并显示了软键盘。因此,请检查输入类型是否有问题。下面的代码来自Xamarin Android项目,但在Java中应该类似。
SearchView.InputType = (int)InputTypes.TextVariationFilter;