我正在尝试连续显示一个文本框和复选框。但似乎并没有被分配。 gridview的元素也不是alligned。
我的代码如下:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<GridView
android:id="@+id/gridView1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:horizontalSpacing="10dp"
android:numColumns="auto_fit"
android:verticalSpacing="10dp" >
</GridView>
</LinearLayout>
和gridview_row.xml的代码:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/relativeLayout1"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@drawable/border"
android:padding="5dp" >
<LinearLayout
android:id="@+id/layout1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true" >
<TextView
android:id="@+id/textViewL"
android:layout_width="0dip"
android:layout_height="match_parent"
android:layout_weight="1"
android:text="TextView"
android:textSize="18sp" />
<CheckBox
android:id="@+id/checkBox1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="right" />
</LinearLayout>
<ImageView
android:id="@+id/imageView1"
android:layout_width="64dp"
android:layout_height="64dp"
android:layout_below="@+id/layout1"
android:layout_centerHorizontal="true"
android:src="@drawable/icon"
tools:ignore="ContentDescription" />
<TextView
android:id="@+id/textView1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/imageView1"
android:layout_centerHorizontal="true"
android:ellipsize="marquee"
android:gravity="center"
android:text="TextView"
android:textSize="18sp" />
</RelativeLayout>
我希望将textview和复选框连成一行。 gridview的元素也必须是alligned。在这方面请帮助我。
答案 0 :(得分:1)
试试这个。
以两种方式
为android:gravity="center_vertical"
和TextView
CheckBox
然后LinearLayout
高度固定为40dp
<LinearLayout
android:id="@+id/layout1"
android:layout_width="fill_parent"
android:layout_height="40dp"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true" >
<TextView
android:id="@+id/textViewL"
android:layout_width="0dip"
android:layout_height="match_parent"
android:layout_weight="1"
android:text="TextView"
android:gravity="center_vertical"
android:textSize="18sp" />
<CheckBox
android:id="@+id/checkBox1"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:gravity="center_vertical" />
</LinearLayout>
然后是第二个
无需提供固定的
<LinearLayout
android:id="@+id/layout1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true" >
<TextView
android:id="@+id/textViewL"
android:layout_width="0dip"
android:layout_height="match_parent"
android:layout_weight="1"
android:text="TextView"
android:gravity="center_vertical"
android:textSize="18sp" />
<CheckBox
android:id="@+id/checkBox1"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:gravity="center_vertical"
android:gravity="right" />
</LinearLayout>
对于GridView
对齐
使用android:singleLine="true"
<TextView
android:id="@+id/textView1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/imageView1"
android:layout_centerHorizontal="true"
android:ellipsize="marquee"
android:gravity="center"
android:singleLine="true"
android:text="TextView"
android:textSize="18sp" />
答案 1 :(得分:0)
在textView
中使用android:gravity="center_vertical"
试试这个
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#00868B" >
<LinearLayout
android:id="@+id/layout1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true" >
<TextView
android:id="@+id/textViewL"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:gravity="center_vertical"
android:text="TextView"
android:textSize="18sp" />
<CheckBox
android:id="@+id/checkBox1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="right" />
</LinearLayout>
</RelativeLayout>
答案 2 :(得分:0)
// try this way and let me know still you have any problem
<?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:id="@+id/lnrmain"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/border"
android:gravity="center"
android:orientation="vertical"
android:padding="5dp" >
<TextView
android:id="@+id/textViewL"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="TextView"
android:textSize="18sp" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="right">
<CheckBox
android:id="@+id/checkBox1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="right" />
</LinearLayout>
<ImageView
android:id="@+id/imageView1"
android:layout_width="64dp"
android:layout_height="64dp"
android:src="@drawable/ic_launcher"
tools:ignore="ContentDescription" />
<TextView
android:id="@+id/textView1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ellipsize="marquee"
android:gravity="center"
android:text="TextView"
android:layout_marginTop="5dp"
android:textSize="18sp" />
</LinearLayout>