2011-10-30 24 views
2

我创建了一款游戏并发布了它,但实际上只是在手机和模拟器上进行了测试。稍后,我将它下载到触摸板上,并限制在顶部的一个小盒子中。经过一番搜索,我发现将此代码添加到我的清单:我怎样才能让我的android应用正确显示在触摸板上?

android:resizeable="true" 
    <supports-screens 
    android:smallScreens="true" 
    android:normalScreens="true" 
    android:largeScreens="true" 
    android:anyDensity="false" /> 

我得到它填满整个屏幕,但一切现在的窘况不成比例。有没有更好的方法来解决这个问题?我需要为手机和触摸板单独布局xml吗?我是否需要从头开始重写我的原始xml?

original not exactly fixed

+0

喂你有没有找到答案? – KarenAnne

回答

1

阅读这篇文章:

http://developer.android.com/guide/practices/screens_support.html

按照本文档中描述的实践,您可以创建 显示正常,并提供优化的应用用户 体验所有支持的屏幕配置,使用单个.apk 文件。 ... 当您的应用程序在用不同密度的屏幕上显示时,保留用户界面 元素的物理尺寸(从用户的角度来看)时,您的应用程序实现“密度无关性”。

保持密度独立性很重要,因为如果没有它,UI元素(例如按钮)在低密度屏幕上显得更大,在高密度屏幕上显示更小。这种密度相关的大小变化可能会导致您的应用程序布局和可用性出现问题。 ... Android系统帮助应用实现密度独立 在两个方面:

  • 系统调整dp单位适合当前屏幕密度

  • 系统扩展绘制资源到适当的尺寸,基于 当前屏幕密度,如果需要的话

+0

嗯,我想这是正确的答案,但我仍然不确定为什么我所有的骰子都不成比例。我会为此发布一个单独的问题。谢谢。 – clayton33

+1

我想你问的是“问:为什么骰子在一个布局'方块',另一个布局'压扁'?”答:因为这两款设备显然有不同的“长宽比”。这会影响布局中的坐标......以及实际的像素高度/宽度。解决方案是使用“dp单位”(使用“android:anyDensity ='true'”)。 – paulsm4

1

我觉得这是更好地设计自己的布局每一个屏幕大小和分辨率。在android中很容易。从“布局”资源文件夹复制您的布局,并将其粘贴到“layout-land”,“layout-xlarge”,“layout-xlarge-land”和...文件夹中并更改您需要的设置。

您可以检查此link:

相关问题