我有2台设备,一台运行姜饼的1024x600 7“平板电脑hdpi和一个连接到触摸屏的集线器,尺寸为1920x1008 22英寸,hdpi运行ICS。 Android操作系统似乎都认为“大”(240dp)。
因此,它们具有相同的实际密度(240dpi),相同的广义密度(hdpi),相同的广义尺寸(大)但不同的实际尺寸(7“对22”)
我为布局指定的文字和间距尺寸在22英寸上非常适用,但在7英寸上它们看起来很大并且不适合屏幕。
我尝试使用dp和sp,没有区别,因为我认为问题是Android将这些东西视为相同的大小/密度。有没有人对我如何能够适当缩放尺寸有任何建议? 该程序最终也需要在4.5英寸手持设备上得到支持。
提前致谢。
答案 0 :(得分:1)
对不起,我之前的回答是完全错误的=)
理想情况下,您应该可以设计7英寸平板电脑,并将您的布局扩展到电视。但如果这不起作用,您应该可以使用类似layout-sw1008dp的内容。“sw”前缀允许您指定屏幕最小边的最小尺寸 - 如果是电视,则指定高度。
答案 1 :(得分:1)
我的申请中也遇到了这样的问题。但我找到了一个很好的解决方案。
我只有tablet
的一个布局,目录名是layout-sw600dp
。
现在,当部分出现高度和宽度问题时,我创建了几个不同的values
目录,其中我放置了dimensions
和font size
以及其他存根。因此,平板电脑屏幕的constant
中不会有layout
值。
androd:layout_width:"60dp" // i drop this scenario
androd:layout_width:"@dimen/tab_width" // i used this scenario
并且您的values
目录名称将类似于
values-xlarge
values-large
将从您的values目录中获取所有值。它不会创建不同的布局,但可以多次使用一个布局。
请参阅我的stack answer,这可能对您有帮助。