我为手机开发了一个应用程序,现在我想添加对平板电脑的支持。但在我的应用程序中,手机和平板电脑的用户界面将完全不同,似乎我需要为手机和平板电脑使用不同的活动,我想使用平板电脑的片段,但我不需要片段有点用于手机的UI。是否可以使用手机的常规活动和平板电脑的片段?在哪里指定平板电脑的资源?
答案 0 :(得分:3)
最好在平板电脑的情况下使用碎片。
检查以下链接
中的基本指南http://developer.android.com/guide/practices/tablets-and-handsets.html
支持多屏幕提供不同的绘图和布局
http://developer.android.com/guide/practices/screens_support.html
您必须在清单文件中提及支持屏幕
<supports-screens android:resizeable=["true"| "false"]
android:largeScreens="true"
android:xlargeScreens="true"/>
您必须拥有不同的布局xml文件
res/layout/my_layout.xml // layout for normal screen size ("default")
res/layout-small/my_layout.xml // layout for small screen size
res/layout-large/my_layout.xml // layout for large screen size
res/layout-xlarge/my_layout.xml // layout for extra large screen size
res/layout-xlarge-land/my_layout.xml // layout for extra large in landscape orientation
对于drawables
res/drawable-mdpi/my_icon.png // bitmap for medium density
res/drawable-hdpi/my_icon.png // bitmap for high density
res/drawable-xhdpi/my_icon.png // bitmap for extra high density
从android 3.2开始
res/layout/main_activity.xml # For handsets (smaller than 600dp available width)
res/layout-sw600dp/main_activity.xml # For 7” tablets (600dp wide and bigger)
res/layout-sw720dp/main_activity.xml # For 10” tablets (720dp wide and bigger)
注意:建议您查看链接http://www.youtube.com/watch?v=amZM8oZBgfk
中的视频您可以从开发者网站下载样本
答案 1 :(得分:-1)
请参阅Supporting Tablets and Handsets
以下一些指南可帮助您创建一款可在平板电脑和手机上提供优化用户体验的应用:
根据片段构建您可以在不同组合中重复使用的活动设计 - 平板电脑上的多窗格布局和手机上的单窗格布局。 片段表示活动中的行为或用户界面的一部分。您可以将片段视为活动的模块化部分(活动的“片段”),它具有自己的生命周期,您可以在活动运行时添加或删除。 如果您尚未使用片段,请首先阅读片段开发人员指南。
使用操作栏,但请遵循最佳做法,并确保您的设计足够灵活,以便系统根据屏幕大小调整操作栏布局。 ActionBar是用于替换屏幕顶部传统标题栏的活动的UI组件。默认情况下,操作栏包括左侧的应用程序徽标,后跟活动标题,以及右侧选项菜单中的项目访问权限。 您可以从选项菜单启用项目,直接在操作栏中显示为“操作项”。您还可以向操作栏添加导航功能,例如选项卡或下拉列表,并使用应用程序图标补充系统的“后退”按钮行为,并选择导航到应用程序的“主页”活动或“向上”应用程序的结构层次结构。 本指南提供了一些使用操作栏的提示,以支持平板电脑和手机。有关操作栏API的详细讨论,请阅读操作栏开发人员指南。
实施灵活布局,如支持多个屏幕的最佳实践和博客文章“像网页设计师一样思考”中所讨论。 灵活的布局设计使您的应用程序能够适应屏幕尺寸的变化。并非所有平板电脑都具有相同的尺寸,并且所有手机的尺寸都不相同。虽然您可能会为“平板电脑”和“手机”提供不同的片段组合,但仍然需要灵活调整每种设计以适应尺寸和宽高比的变化。
答案 2 :(得分:-1)