我正在为我的申请设计注册表。
我试图让它看起来像那样;
与此同时,我已经成功设计了我想要的组件(线性布局和圆角), 但我无法确定为什么按钮没有出现在屏幕上?
如果你能指导我,我将感激不尽
这是xml文件
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:background="@drawable/main_background"
tools:context="managers.sessionmanager.ClientRegistration">
<ScrollView
android:layout_width="match_parent"
android:fillViewport="true"
android:layout_height="match_parent">
<LinearLayout
android:layout_width="match_parent"
android:orientation="vertical"
android:layout_height="match_parent">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:background="#FFFFFF"
android:layout_marginBottom="110dp"
android:layout_marginLeft="40dp"
android:layout_marginRight="40dp"
android:layout_marginTop="110dp"
android:id="@+id/textFieldsLayout"
android:paddingLeft="20dp"
android:paddingRight="20dp">
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="40dp"
android:background="@drawable/item_holder"
android:orientation="vertical"
android:layout_alignParentTop="true"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:id="@+id/firstNameLayout"
android:layout_marginTop="10dp">
<EditText
android:id="@+id/firstNameET"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/item_info"
android:gravity="center|left"
android:hint="First Name"
android:paddingBottom="8dp"
android:textColorHint="#f7941e"
android:paddingLeft="16dp"
android:paddingRight="16dp"
android:paddingTop="8dp"
android:textColor="#6d6e71"
android:textSize="20sp">
</EditText>
</LinearLayout>
</LinearLayout>
<Button
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="@drawable/orange_button_selector"
android:text="@string/register"
android:id="@+id/okBtn"
android:textColor="@android:color/background_light" />
</LinearLayout>
</ScrollView>
</LinearLayout>
我正在使用itemholder和iteminfo,如果它可以帮助我也可以添加它。
先谢谢你的帮助, Eden Ben Simon
答案 0 :(得分:1)
作为Button的兄弟的LinearLayout具有height = match_parent,其必须是wrap_content以允许Button可见。
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
tools:context="managers.sessionmanager.ClientRegistration">
<ScrollView
android:layout_width="match_parent"
android:fillViewport="true"
android:layout_height="match_parent">
<LinearLayout
android:layout_width="match_parent"
android:orientation="vertical"
android:layout_height="match_parent">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content" <!-- Update this attribute -->
android:orientation="vertical"
android:background="#FFFFFF"
android:layout_marginBottom="110dp"
android:layout_marginLeft="40dp"
android:layout_marginRight="40dp"
android:layout_marginTop="110dp"
android:id="@+id/textFieldsLayout"
android:paddingLeft="20dp"
android:paddingRight="20dp">
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="40dp"
android:orientation="vertical"
android:layout_alignParentTop="true"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:id="@+id/firstNameLayout"
android:layout_marginTop="10dp">
<EditText
android:id="@+id/firstNameET"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center|left"
android:hint="First Name"
android:paddingBottom="8dp"
android:textColorHint="#f7941e"
android:paddingLeft="16dp"
android:paddingRight="16dp"
android:paddingTop="8dp"
android:textColor="#6d6e71"
android:textSize="20sp">
</EditText>
</LinearLayout>
</LinearLayout>
<Button
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Register"
android:id="@+id/okBtn"
android:textColor="@android:color/background_light" />
</LinearLayout>
</ScrollView>
</LinearLayout>
但是我会使用RelativeLayout和LinearLayout来设计这个表单。
答案 1 :(得分:0)
您的textFieldsLayout
设置为完全填充其父级,不再留下按钮的空间:
android:layout_height="match_parent"
一个选项是让按钮占用所需的空间,然后给textFieldsLayout
留下任何空间。在layout_weight
上使用textFieldsLayout
:
android:layout_height="0dp"
android:layout_weight="1"