非常感谢。我是android的开始。我正在尝试一个CheckBox按钮。我做了一个小项目。看我的项目照片:
1.为什么CheckBox的列表不是同一个位置,它就像一个随机的?
检查我的Xml代码:
2.我使用的是android:layout_marginTop =“30dp”,android:textSize =“20dp”,这是声明中的完美规则吗?它将同样支持所有设备?
<CheckBox
android:id="@+id/checkBox1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Wonton Soup "
android:layout_marginTop="30dp"
android:layout_gravity="center"
android:textSize="20dp"
/>
<CheckBox
android:id="@+id/checkBox2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Egg Drop Soup "
android:layout_gravity="center"
android:layout_marginTop="10dp"
android:textSize="20dp"
/>
<CheckBox
android:id="@+id/checkBox3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="French Fries "
android:layout_gravity="center"
android:textSize="20dp"
android:layout_marginTop="10dp"
/>
再次感谢。
答案 0 :(得分:1)
1.为什么CheckBox的列表不是同一个位置,它就像一个随机的?
您将CheckBoxes置于android:layout_gravity="center"
的中心位置。观察每个CheckBox的边界在其父级中心。
也许你所期待的是这样的东西:
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical"
android:layout_gravity="center">
<CheckBox ... />
<CheckBox ... />
<CheckBox ... />
</LinearLayout>
然后,CheckBoxes会在一个包裹宽度的居中框内左对齐显示。
2.我正在使用android:layout_marginTop =&#34; 30dp&#34;,android:textSize =&#34; 20dp&#34;,它是声明中的完美规则吗?它会支持所有设备吗?
我不确定你对这个问题的意思,但有两个可能的问题:
如果布局没有滚动,布局可能会扩展到屏幕较小的设备的边界之外。一个简单的解决方案可能是将整个布局包装在ScrollView中。
建议不要在文本中使用DP,因为用户可能已设置文本缩放的首选项:android:textSize="20sp"
或者,您可能需要使用Android预设的TextAppearance之一,例如:android:textAppearance="?android:attr/textAppearanceLarge"
答案 1 :(得分:0)
步骤1.将所有复选框放入LinearLayout。
步骤2.设置所有复选框属性,
android:layout_gravity = "left"
答案 2 :(得分:0)
由于所有Checkbox的文本长度不同。将值放在文本视图的最大长度字段中。像
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center"
android:orientation="vertical" >
<CheckBox
android:id="@+id/checkBox1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="30dp"
android:maxWidth="125dp"
android:text="French Fries /Testsatrs"
android:textSize="20dp" />
<CheckBox
android:id="@+id/checkBox2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:text="French Fries "
android:textSize="20dp"
android:maxWidth="125dp"/>
<CheckBox
android:id="@+id/checkBox3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="French Fries "
android:maxWidth="125dp"
android:textSize="20dp"
android:layout_marginTop="10dp"
/>
</LinearLayout>