我有一个布局,有8个按钮,2个图像视图和2个文本视图。在我的设备(Galaxy S)上它适合但是在屏幕较小的设备上,底部没有出现。我如何调整所有屏幕的布局?
答案 0 :(得分:1)
将RelativeLayouts或LinearLayouts与layout_weight
属性一起使用。如果您可以发布一些xml,我会给你更多的建议。
问题一般发生在ImageViews上,因为它们在较小的屏幕上占据更多的空间,因为较小的屏幕每英寸的像素数较少。通常的做法是在dp
中限制大小。
答案 1 :(得分:1)
您可以定义更多不同宽度和高度的布局。然后检查设备的高度和宽度以及密度,并使用该设备的特定布局。
答案 2 :(得分:1)
使用屏幕相关像素dp和sp。针对不同的屏幕尺寸设计不同的布局。 http://developer.android.com/guide/practices/screens_support.html< - 请参阅此处
对于大多数宽度和有时高度问题,您可以使用layout_weight为每个视图分配确切的比例。
如果没有其他选择并且您的布局必须采用这种方式,您可能需要考虑使用ScrollView来包装父布局,以便它们可以滚动。 http://developer.android.com/reference/android/widget/ScrollView.html< - 请参阅此处。
祝你好运。答案 3 :(得分:1)
如果您希望自己的应用支持各种屏幕尺寸, 您需要为每种屏幕类型创建不同的布局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
在运行时 - android会根据设备的屏幕类型自动选择合适的资源
你可以在上面阅读更多相关信息 - http://developer.android.com/guide/practices/screens_support.html