我正在开发一款Android应用,我们针对所有屏幕尺寸进行定位?我如何制作布局?我应该为每种类型的屏幕制作不同的layout.xml,还是有其他“有效”的做事方式?
答案 0 :(得分:6)
阅读Supporting Multiple Screens,特别是“屏幕独立的最佳做法”部分。
基本规则:
关于屏幕截图的修改。
<ImageButton
android:id="@+id/btnSubmit"
android:src="@drawable/submit"
android:layout_height="22dp"
android:layout_width="85dp"
android:layout_marginTop="15dp"
android:layout_below="@+id/confirmpassword"
android:layout_centerInParent="true" />
您在此指定了两个可能无法很好地协作的垂直约束。而不是layout_centerInParent,尝试layout_centerHorizontal。
你也可以给RelativeLayout一个gravity =“top | center_horizontal”。因此,默认情况下,元素在视图中水平居中并粘在顶部。
同时尝试将firstname
与btnSignin
对齐,而不是username
。你可能很幸运。
RelativeLayout是最复杂的布局。如果你在一段时间后无法正确使用它,你可以简单地决定使用嵌套的LinearLayout组合
答案 1 :(得分:2)
对于横向和纵向模式,您可以使用不同的xmls,因为您需要根据方向显示您的屏幕。我一直在为我的应用程序使用此方法。 对于多屏幕的支持,您可以将相对布局作为父节点。不要采用绝对布局。
答案 2 :(得分:1)
你必须采取相对布局的任何动态屏幕&amp;所有测量都将以百分比(%)或您可以使用属性(填充父级或包装内容),这样做你可以在某种程度上管理不同屏幕的布局