Android:如何为智能手机和平板电脑设计应用程序?
我知道已经有很多关于Android 3.0应用程序向后兼容性的内容 然而,读完这些之后,我只是比以前更困惑了( 我拥有的是一款支持min.SDK版本8(2.2)的智能手机应用程序 我现在希望这一款在智能手机上保持不变,但在蜂窝平板电脑上也提供了一款别致的版本,带有动作条和碎片等等 我知道有兼容包,但我所读到的都是关于碎片的。操作栏和全息主题是怎么回事?我只是在平板电脑上将targetSdkVersion更改为“11”就很容易做到了。我怎么能用兼容包做到这一点 或者你会说开发两个不同版本的程序更好吗?(也许以后再把它们合并在一起?) 亲切问候,,Android:如何为智能手机和平板电脑设计应用程序?,android,sdk,backwards-compatibility,android-3.0-honeycomb,android-support-library,Android,Sdk,Backwards Compatibility,Android 3.0 Honeycomb,Android Support Library,我知道已经有很多关于Android 3.0应用程序向后兼容性的内容 然而,读完这些之后,我只是比以前更困惑了( 我拥有的是一款支持min.SDK版本8(2.2)的智能手机应用程序 我现在希望这一款在智能手机上保持不变,但在蜂窝平板电脑上也提供了一款别致的版本,带有动作条和碎片等等 我知道有兼容包,但我所读到的都是关于碎片的。操作栏和全息主题是怎么回事?我只是在平板电脑上将targetSdkVersion更改为“11”就很容易做到了。我怎么能用兼容包做到这一点 或者你会说开发两个不同版本的程序更好
水母保留一个apk,只需为平板电脑使用其他资源即可 看看: 本节目向您展示了如何在同一APK中定位智能手机和平板电脑(带蜂巢)的目录结构 编辑 蜂窝上的花式版本 在蜂巢中使用碎片不会改变你的UI,它只是一种重用代码的方法。所以你不需要碎片来让你的UI“漂亮” 编辑2 要查找当前运行的Android版本,您可以执行以下操作
int b = Integer.parseInt(Build.VERSION.SDK);
if(b >= Build.VERSION_CODES.HONEYCOMB){
Log.i(TAG, "Found A Tablet Running Honeycomb or newer");
}
编辑3
在您的活动呼叫中,您可以访问此处所述的所有操作栏方法:今年在Google IO上有一个关于这个主题的演讲。现在可在YouTube上获得/layout-xlarge-v11/是指布局文件-X大屏幕(7英寸以上)-版本11是蜂窝状的。也就是说,在加载到表上时使用此文件夹中的布局,但要与兼容包一起加载,对吗?->否则,就不会有“碎片”,可以吗?如果您愿意,您可以在布局文件中使用片段,是的,您需要片段库。建议使用片段。正如您所说的,另一种方法是在类加载时(有意等)检查SDK版本,如果(平板电脑)在活动调用getActionBar()中运行HomeActivityTablet.java else HomeActivity.javaErm;然后您可以访问此处所述的所有操作栏方法:以及手机上可用的方法:-)尝试以下链接: