我有一个xml文件,如下所示。
<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:background="@drawable/imagesand"
android:layout_height="match_parent" >
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:paddingLeft="10dp"
android:paddingRight="10dp" >
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Collaboration Set Up :"
android:textSize="20dp" />
<EditText
android:id="@+id/projectname"
android:layout_width="match_parent"
android:layout_height="36dp"
android:hint="Group Name"
android:paddingLeft="10dp"
android:background="@drawable/button"
android:ems="10" >
</EditText>
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Data To Collect :"
android:textSize="20dp" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal" >
<CheckBox
android:id="@+id/fnamechk"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:checked="true"
android:enabled="false"
android:textSize="13dp"
android:text=" First Name" />
<CheckBox
android:id="@+id/lnamechk"
android:textSize="13dp"
android:layout_width="wrap_content"
android:checked="true"
android:enabled="false"
android:layout_height="wrap_content"
android:text="Last Name" />
<CheckBox
android:id="@+id/personalemailchk"
android:layout_width="wrap_content"
android:checked="true"
android:enabled="false"
android:layout_height="wrap_content"
android:text="Personal Email"
android:textSize="13dp" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal" >
<CheckBox
android:id="@+id/workphonechk"
android:textSize="13dp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Work Ph." />
<CheckBox
android:id="@+id/companychk"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Company"
android:textSize="13dp" />
<CheckBox
android:id="@+id/Workemailchk"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Work Email"
android:textSize="13dp" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal" >
<CheckBox
android:id="@+id/cellchk"
android:layout_width="wrap_content"
android:textSize="13dp"
android:layout_height="wrap_content"
android:text="MobNo." />
</LinearLayout>
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Data Visible to User:"
android:textSize="20dp" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal" >
<CheckBox
android:id="@+id/fname2"
android:textSize="13dp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:enabled="false"
android:checked="true"
android:text="First Name" />
<CheckBox
android:id="@+id/lname2"
android:enabled="false"
android:checked="true"
android:textSize="13dp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Last Name" />
<CheckBox
android:id="@+id/personalemail2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:enabled="false"
android:checked="true"
android:text="Personal Email"
android:textSize="13dp" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:paddingBottom="10dp" >
<CheckBox
android:id="@+id/workphone2"
android:textSize="13dp"
android:enabled="false"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Work Ph." />
<CheckBox
android:id="@+id/Comoany2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:enabled="false"
android:text="Company"
android:textSize="13dp" />
<CheckBox
android:id="@+id/workemail2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:enabled="false"
android:text="Work Email"
android:textSize="13dp" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal" >
<CheckBox
android:id="@+id/cell2"
android:textSize="13dp"
android:enabled="false"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Mob.No" />
</LinearLayout>
<LinearLayout android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<RadioGroup
android:id="@+id/radioGroup1"
android:orientation="horizontal"
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
<RadioButton
android:id="@+id/available"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="13dp"
android:text="Available" />
<RadioButton
android:id="@+id/none"
android:textSize="13dp"
android:layout_gravity="center_horizontal"
android:layout_width="wrap_content"
android:layout_marginLeft="50dp"
android:layout_height="wrap_content"
android:text="None" />
</RadioGroup>
</LinearLayout>
<LinearLayout android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<RadioGroup
android:id="@+id/radioGroup2"
android:orientation="horizontal"
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
<RadioButton
android:id="@+id/Private"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="13dp"
android:text="Private" />
<RadioButton
android:id="@+id/Public"
android:layout_marginLeft="65dp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="13dp"
android:text="Public" />
</RadioGroup>
</LinearLayout>
<Button
android:id="@+id/generate"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:background="@drawable/login"
android:text="Generate" />
</LinearLayout>
</ScrollView>
当我在较小的设备中打开它时,它看起来像这样。我已经实现了滚动视图。
当我在平板电脑中打开时,它就像这样。
正如您所看到的,在标签中浪费了更大的空间,那么我可以利用可用空间并根据屏幕尺寸将复选框分布在屏幕上吗?
答案 0 :(得分:4)
您必须使用Configuration Qualifiers
,您可以参考以下帖子:
基本上你的项目应该是这样的:
或者,您也可以通过尺寸控制布局,例如:
<Button android:width= "@dimen/somewidth"/>
将此维度声明为多个值,如下所示:
答案 1 :(得分:1)
您必须根据您的设备将不同的图像放在不同的可绘制文件夹中。 边距和填充不是直接在xml文件中,但这是在dimens.xml文件中声明然后你使用它..这个dimens.xml文件根据设备特定的不同...请检查它。如果有任何疑问那么告诉我。
答案 2 :(得分:0)
我发现您每次使用多个标签时都会定义多个复选框。 我曾经遇到过这个问题而且我找到了解决方法,但是我正在动态地定义使用java代码的元素。
此 LINK 解决了我的问题。 页面中的给定功能定义了在达到特定设备的最大屏幕宽度时创建新线性布局的方法。
我还想建议使用这么多代码来定义xml文件中的复选框。这将导致应用程序的大小增加。但是,如果您可以在字符串中定义复选框的名称,然后在java代码中循环它们以创建复选框,则apk文件将更小,更容易为用户下载。
我希望这有帮助..
答案 3 :(得分:0)
除了已经给出的答案。我们可以将ems添加到维度 在dimens.xml中是这样的 3