我想做的是更改虚拟键盘中出现的默认“完成”标签。这是我没有任何运气的方法:

mSearchInput.setImeOptions(EditorInfo.IME_ACTION_DONE);
mSearchInput.setImeActionLabel(getString(R.string.search_action_label), EditorInfo.IME_ACTION_DONE);

但是,可以单击该按钮,以处理以下单击:

mSearchInput.setOnEditorActionListener(new TextView.OnEditorActionListener() {
    @Override
    public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
        if (actionId == EditorInfo.IME_ACTION_DONE) {
            performSearch();
            return true;
        }
        return false;
    }
});

目前如何更改该按钮上的标签我毫无头绪。

有帮助吗?

解决方案

imeActionLabel 设置在全屏IME模式下出现在右上方的按钮的标签(即,当您的手机处于风景中时)。如果要将按钮更改为键盘右下角,则可以将某些标志传递给 imeOptions.

据我所知,对于该按钮,您仅限于一系列操作(请参阅 这里 对于支持标志的完整列表),但是由于您似乎想要一个搜索按钮,您所要做的就是稍微调整第一行并使用 IME_ACTION_SEARCH:

mSearchInput.setImeOptions(EditorInfo.IME_ACTION_SEARCH);

请注意,该按钮的确切外观将取决于输入方法。默认的Android键盘显示搜索标志的放大镜,而触摸输入(HTC的键盘)似乎完全不知道该标志,但仍显示返回按钮。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top