Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/193.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使Android应用程序与平板电脑兼容?_Android - Fatal编程技术网

如何使Android应用程序与平板电脑兼容?

如何使Android应用程序与平板电脑兼容?,android,Android,我开发了一个移动应用程序,发布在Google play上。现在,客户端要求应用程序与平板电脑设备兼容。我知道所有不同的可绘制文件夹用于不同密度的设备 我从平板电脑设计开始,通过使用另一个布局文件夹命名layout large来完成所有设计 现在我的问题是,我是否需要为7英寸、9英寸和10英寸屏幕分别设计平板电脑屏幕?或者对于任何平板电脑设备,保存在layout large文件夹中的屏幕设计将用于平板电脑 我不确定上面的事情,我甚至采取了另一个文件夹布局-sw720dp的名称,并做了指定的9“平板

我开发了一个移动应用程序,发布在Google play上。现在,客户端要求应用程序与平板电脑设备兼容。我知道所有不同的可绘制文件夹用于不同密度的设备

我从平板电脑设计开始,通过使用另一个布局文件夹命名layout large来完成所有设计

现在我的问题是,我是否需要为7英寸、9英寸和10英寸屏幕分别设计平板电脑屏幕?或者对于任何平板电脑设备,保存在layout large文件夹中的屏幕设计将用于平板电脑

我不确定上面的事情,我甚至采取了另一个文件夹布局-sw720dp的名称,并做了指定的9“平板电脑。这里我使用了一些不同的图像,因为我们有更多的空间。因为我只有7英寸平板电脑来测试它,测试时可以看到布局大文件夹中使用的所有屏幕。当我将我的apk文件发送给客户端时,我们知道客户端也只能看到布局大文件夹屏幕

我在这方面搜索了很多,我发现的是有单独的布局,但我没有发现设计适合所有平板电脑或单独使用的屏幕。阅读android教程,我发现我们应该使用规范sw600dp,sw720dp。这意味着两者都应该存在,或者任何一个都不够理解

我很抱歉我的英语,这是我第一次做手机应用的平板电脑兼容性。请在这方面提供帮助

提前谢谢

我是否需要为7英寸、9英寸和10英寸屏幕分别设计平板电脑屏幕

希望不是,但这是不可能的抽象回答

或者,对于任何平板电脑设备,保存在layout large文件夹中的屏幕设计将用于平板电脑

对。如果您不提供
res/layout xlarge/
目录,
-xlarge
设备(例如10英寸平板电脑)将使用
res/layout large/

在阅读android教程时,我发现我们应该使用sw600dp和sw720dp这两个说明符。这意味着两者都应该存在,否则任何一个都不够理解


如果愿意,欢迎您使用。请注意,它们仅适用于Android 3.2及更高版本。

此解决方案也适用于所有Android手机设备和平板电脑。 这是同样的解决方案

public String getScreenResolution()
    {
    int screenSize = getResources().getConfiguration().screenLayout &
    Configuration.SCREENLAYOUT_SIZE_MASK;
     switch(screenSize) {
    case Configuration.SCREENLAYOUT_SIZE_XLARGE:
    deviceResolutionString="tablet";
    // This will returns tablet , you can start your tablet activity from here 
     break;
    case Configuration.SCREENLAYOUT_SIZE_LARGE:
    deviceResolutionString="tablet";
    // This will returns tablet , you can start your tablet activity from here 
    break;
    case Configuration.SCREENLAYOUT_SIZE_NORMAL:
    deviceResolutionString="device";
    // This will returns Phone , you can start your phone activity from here 
    break;
    case Configuration.SCREENLAYOUT_SIZE_SMALL:
    deviceResolutionString="device";

    // This will returns Phone , you can start your phone activity from here 
    break;
    default:
    }
    returndeviceResolutionString;
    }

有些7英寸的设备使用大文件夹布局,有些使用sw600dp,这取决于设备。我非常感谢你的回答,现在我的困惑已经清楚了。我只想再澄清一点。在谷歌上搜索时,我发现大型的xlarge说明符已经被弃用了。这是真的吗?如果是这样,那么我可以使用sw600dp,sw700dp。但问题是我的应用程序构建sdk是2.1,我读了sw600dp,sw700dp将不适用于预蜂窝设备。我怎样才能在这个问题上找到一些解决方案。@NR2812在Android中,“弃用”的意思是“我们有另一个我们认为您应该考虑的解决方案”。对于
-large
和kin,它们在Android 3.2中被弃用。然而,他们的替代品只是在安卓3.2中添加的。对于运行安卓3.1及以下版本的设备,“不推荐使用”的原始存储桶是您唯一的选择,这些存储桶在安卓3.2及更高版本上也能正常工作。我建议人们坚持使用旧的bucket,直到安卓2.x逐渐消失,除非你对新的
-swNNNdp
系统有特殊需求。