1
嗯,这是我第一次在真实的Android设备上测试我的应用程序。用户界面布局与模拟器有着惊人的不同。请看图片:Codename One:模拟器上的用户界面布局和真实的Android设备完全不同
的代码是相同的,什么也没有改变。
Android版本是5.1.1。
的代码显示屏幕:
private final void show() {
loginSignupForm = new Form(null, new BorderLayout());
Tabs loginSignupTabs = new Tabs();
Image splashScreenImage = theme.getImage("Starlent_logo25x25.png");
((Label) loginSignupForm.getToolbar().getTitleComponent()).setIcon(splashScreenImage);
Style loginSignupStyle = UIManager.getInstance().getComponentStyle("Tab");
prepareAndAddSignupTab(loginSignupTabs, loginSignupStyle);
prepareAndAddLoginTab(loginSignupTabs, loginSignupStyle);
loginSignupForm.add(BorderLayout.CENTER, loginSignupTabs);
loginSignupForm.show();
}
那么,如何管理或期望的布局要在不同的设备?
至少,我希望将徽标放置在Android设备的中心。我怎么做?
嗨,在“新建项目”创建阶段,您是否选择了“原生主题”模板?这似乎是您使用的主题适应设备的操作系统平台。因此,模拟器具有iOS设备和iOS主题,Android设备具有Android本机主题,因此布局不同(这是默认的OS标准)。您可以覆盖所有这些设置。最快的方法是使用不同的主题,方法是打开资源编辑器(theme.res)文件。并添加现有的红色,蓝色或商业主题。 –
是的,我特意选择了本地主题。换句话说,我必须让它适应平台的默认主题。那么集中标志呢?如果我能将徽标居中,那就没问题了(假设我的其他屏幕没有更多惊喜)。 – ikevin8me
它看起来像模拟器是iPhone和真实设备的屏幕截图是Android。这是差异的原因吗?我可能是错的。 –