我正在尝试使用平板电脑上的示例SoftKeyboard(Android 3.2)。 当我打开Google邮件应用并将焦点设置为收件人字段时,文本字段会展开以填充键盘上方的可用空间。
这看起来非常像全屏或提取模式,如文档中的Onscreen Input Methods所述。根据我在那里收集的内容,这是由活动设置的,它使用SoftKeyboard。
我的错误是
所以我的问题是:在示例SoftKeyboard中我需要更改什么才能获得类似的行为?
谢谢&一切顺利
安德烈亚斯
答案 0 :(得分:1)
示例软键盘非常过时 - 它使用了自Froyo / Eclair以来从未见过的布局。
示例软键盘就是:一个示例,不要与完全成熟的Android键盘混淆。如果您正在寻找Android键盘的完整实现,请查看AnySoftKeyboard的源代码或AOSP源代码。
为了摆脱全屏,我知道问题的一部分在于onComputeInsets()
功能。就像我说的那样,我将你的代码基于完整的Android键盘(即AOSP或Cyanogenmod),而不是试图让样本工作。我试了好几个月,而且你遇到的问题太多了(多点触控和主题,只是为了说出几个人)。
如果您有任何问题,请给我发电子邮件。
答案 1 :(得分:0)
您可以使用按钮,textview设计所需的软键盘布局,无论您想在键盘上显示什么。
和setOnclickListener到键盘的所有按钮
像这样覆盖onCreateInputView()
@Override
public View onCreateInputView() {
View mInputView = getLayoutInflater().inflate(
R.layout.yourkeyboardlayout, null);
Button btn1 = mInputView.findViewById(R.id.btn1);
btn1 .setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
// append text in selected TextField
String buttonLabel = ((Button)v).getText().toString();
getCurrentInputConnection().commitText(buttonLabel, 1);
}
});
return mInputView;
}
答案 2 :(得分:0)
我有一个类似的问题,因为我创建了自己的键盘,这篇博文几乎回答了我需要知道的事情:
http://android-developers.blogspot.com/2009/04/updating-applications-for-on-screen.html
也许它对你有帮助。