Button not displaying in LinearLayout
I am trying to add a Button
in a LinearLayout
after a TextView
but it is not showing up.
Here is my layout code
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://sc开发者_开发技巧hemas.android.com/apk/res/android"
android:id="@+id/LinearLayout01"
android:layout_width="fill_parent"
android:layout_height="45dip">
<TextView android:layout_width="fill_parent"
android:layout_height="45dip"
android:paddingLeft="5dip"
android:paddingRight="5dip"
android:textStyle="bold"
android:textSize="17dip"
android:gravity="center_vertical"
android:id="@+id/tvChild"
android:text="Children"
android:textColor="#ffCCCC22" />
<Button android:id="@+id/submit"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:text="Submit" />
</LinearLayout>
The TextView
is displayed correctly with proper text but instead of a Button
I am getting a big blank space of three to four lines length.
What am I missing?
Try this.
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout android:id="@+id/LinearLayout01"
android:layout_width="fill_parent" android:layout_height="45dip"
xmlns:android="http://schemas.android.com/apk/res/android">
<TextView android:layout_width="wrap_content"
android:layout_height="45dip" android:paddingLeft="5dip"
android:paddingRight="5dip" android:textStyle="bold" android:textSize="17dip"
android:gravity="center_vertical" android:id="@+id/tvChild"
android:text="Children" android:textColor="#ffCCCC22"
/>
<Button android:id="@+id/submit"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:text="Submit" />
</LinearLayout>
Use android:layout_width="wrap_content"
instead of
android:layout_width="fill_parent"
for TextView
and Button
The problem was you were setting android:layout_width="fill_parent"
for the TextView
, so it took full screen width just for displaying the TextView
. And it was not able to display the Button
.
Here are two options for you :
Adding
TextView
andButton
on a single row.Change the
layout_width
attribute of theTextView
towrap_content
.Adding
TextView
andButton
vertically.Change
LinearLayout
's orientation attribute tovertical
.
You could also try something similar to this
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout 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"
tools:context=".MainActivity"
android:orientation="vertical"
android:layout_margin="10dp"
>
<TextView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="3"
android:layout_gravity="center"
android:text="Hello World!"/>
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:layout_gravity="center"
android:text="Submit"/>
</LinearLayout>
精彩评论