我正在创建我的第一个强大的 android 应用程序,并且在尝试在主窗体上布局控件时遇到了很多麻烦。
我有 4 个文本视图、1 个复选框和 1 个按钮。使用 Galaxy Nexus(4.65 英寸)进行调试,但使用 4 英寸的表单屏幕尺寸,因此我的应用程序可以适应较小的屏幕尺寸。
每当我尝试移动文本视图或按钮时,所有其他控件似乎都会自行移动到不同的位置。当我调试时,按钮的一半位置也让我强制关闭。布置控件似乎不应该这么难,但我又来自winforms和很少的asp.net。
任何意见,将不胜感激!
编辑:添加 xml。我尝试了换行的宽度/高度、匹配父级和自定义尺寸,结果都一样。也许我的控件应该在某种表格中,例如 asp.net?
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#808080" >
<Button
android:id="@+id/btnOK"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
android:layout_marginBottom="38dp"
android:background="#FFFFFF"
android:onClick="onOKclicked"
android:text="@string/OkButton" />
<CheckBox
android:id="@+id/chkShow"
android:layout_width="300dp"
android:layout_height="wrap_content"
android:layout_above="@+id/btnOK"
android:layout_alignParentRight="true"
android:layout_marginBottom="40dp"
android:text="@string/DoNotShow"
android:textColor="#FFFFFF"
android:textSize="16dp" />
<TextView
android:id="@+id/txt3G"
android:layout_width="120dp"
android:layout_height="wrap_content"
android:layout_above="@+id/chkShow"
android:layout_marginBottom="112dp"
android:text="@string/Description3G"
android:textColor="#FFFFFF"
android:textSize="16dp" />
<TextView
android:id="@+id/txt4G"
android:layout_width="200dp"
android:layout_height="wrap_content"
android:layout_above="@+id/txt3G"
android:layout_alignLeft="@+id/chkShow"
android:layout_marginBottom="36dp"
android:text="@string/Description4G"
android:textColor="#FFFFFF"
android:textSize="16dp" />
<TextView
android:id="@+id/txtDescription"
android:layout_width="250dp"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_marginRight="20dp"
android:layout_marginTop="14dp"
android:text="@string/Instructions1"
android:textColor="#FFFF00"
android:textSize="16dp" />
<TextView
android:id="@+id/txtBattery"
android:layout_width="100dp"
android:layout_height="wrap_content"
android:layout_alignBaseline="@+id/txt3G"
android:layout_alignBottom="@+id/txt3G"
android:layout_alignLeft="@+id/btnOK"
android:layout_marginLeft="30dp"
android:text="@string/DescriptionBattery"
android:textColor="#FFFF00"
android:textSize="14dp"
android:textStyle="italic" />
</RelativeLayout>