具有不同功能的多个页面

时间:2013-08-30 07:47:22

标签: java android xml android-manifest

我目前正在为Eclipse(Java)中的智能手机和平板电脑制作布局项目。我按照开发者网站上的说明,如何为不同的屏幕创建不同的布局,这很好。

我遇到的问题是我想在不同的布局中使用不同的按钮,当我从中移除1个按钮时,让我说我的智能手机版本,但我想在我的平板电脑版本中使用它,智能手机版本崩溃,因为在MainActivity中。 java它需要一个他找不到的按钮。

我试图通过为每个设备创建一个不同的mainActivity页面来解决问题,但我无法弄清楚是否有可能在AndroidManifest中创建多个具有不同名称的启动页面,具体取决于当前使用的设备。

问候。

3 个答案:

答案 0 :(得分:0)

如果它是一个不同的按钮,但按钮仍然存在,那么你可以初始化变量以引用其他按钮和代码仍然可以工作。

如果行为不一样,那么你可以有一个包含大部分公共代码的基类,以及每个布局一个的2个子类。

答案 1 :(得分:0)

问题是你可能会为不同布局文件中的不同按钮提供不同的id。根据布局文件夹更改drawable / style,但为不同布局中的所有按钮保持id相同。

答案 2 :(得分:0)

我建议您使用AndroidQuery来实现此目的。它在一个简单的代码中支持多个ui实现。

public void renderContent(Content content, View view) {

        //this is a phone!

        //this view exists
        aq.id(R.id.textInMobileLayoutOnly).text("Welcome to my Mobile App!");

        //this button exist in tablet layout only, but it's ok
        //AQuery will ignore all the operations on this view
        aq.id(R.id.butttonInTabletOnly).text("Open a new tab!");        

}