24
我想要做的是更改虚拟键盘中出现的默认“完成”标签。这里就是我没有任何的运气尝试:Android:无法计算如何使用setImeActionLabel
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;
}
});
我无能,如何此刻我可以更改该按钮上的标签。
这很奇怪。当我在模拟器中切换到横向时,软键盘不再出现。 此外,我注意到消息应用程序,例如,把笑脸(“:-)”),而不是“完成”按钮。它使用自定义键盘布局还是什么? 感谢您的提示,顺便说一下。 – Felix 2009-10-09 11:28:04
软键盘没有显示出来,因为仿真器模拟了横向模式下暴露的物理键盘(就像将软键盘打开时软键盘不会出现在G1上一样)。您可以通过修改AVD的config.ini文件来禁用键盘,并添加'hw.keyboard = no'。 至于消息应用程序,我刚刚检查了它的源代码,并且我猜测笑脸是inputType =“textShortMessage”的副产品,缺少“发送”按钮是由于“imeOptions =” flagNoEnterAction“',但我没有真正测试过它。请注意,触摸输入似乎忽略了两个标志。 – mernen 2009-10-09 22:45:02
从原始问题的代码中,如果你只是添加这个“OR”代码,你可以考虑物理键盘的“返回”按钮:if(actionId == EditorInfo.IME_ACTION_SEARCH || event.getKeyCode()== KeyEvent.KEYCODE_ENTER ) – CircuitBreaker716 2012-01-24 05:54:17