【发布时间】:2018-09-11 12:47:20
【问题描述】:
我在 Android 上遇到问题,但在 IOS 上没有问题。 我有一个基本屏幕,其中在可滚动的 Y_AXIS 容器中有 10 个 TextField;我把它放在下面的 BorderLayout.CENTRE 容器上。 然后我在同一个基本容器中但在 BorderLayout.SOUTH 中有一个 Button。
当用户点击任何TextField,编辑它时,键盘显示并放置BorderLayout.SOUTH的内容,即。键盘上方的按钮隐藏了一些字段。我希望 Button 根据 IOS 隐藏在键盘下方。
因为我刚刚意识到会发生这种情况,所以我现在有一些屏幕,如果我有一定的容器和字段组合,它不会出现,一些屏幕会挤压我的文本字段,还有一些屏幕会只是隐藏了我希望用户看到的另一个字段。
我附上了一个显示此内容的基本页面。请注意,这在模拟器上很好,因为没有显示键盘。 非常感谢
public class Keyboard {
private Form currentForm = new Form("", new BorderLayout());
public void buildPage() {
Container c = new Container(new BorderLayout());
Container y = new Container(new BoxLayout(BoxLayout.Y_AXIS));
y.setScrollableY(true);
y.add(new TextField());
y.add(new TextField());
y.add(new TextField());
y.add(new TextField());
y.add(new TextField());
y.add(new TextField());
y.add(new TextField());
y.add(new TextField());
y.add(new TextField());
y.add(new TextField());
y.add(new TextField());
y.add(new TextField());
c.add(BorderLayout.CENTER, y);
c.add(BorderLayout.SOUTH, buildButton());
currentForm.add(BorderLayout.CENTER, c);
currentForm.getAllStyles().setBgColor(0x65363);
currentForm.getAllStyles().setBgTransparency(255);
currentForm.setFormBottomPaddingEditingMode(true);
currentForm.show();
}
private Component buildButton() {
Button button = new Button("Hide this button");
return button;
}
}
【问题讨论】:
标签: android codenameone