【问题标题】:Android Layout allignment of Textview and checkboxTextview和复选框的Android布局对齐
【发布时间】:2013-11-23 12:14:00
【问题描述】:

我试图连续显示一个文本框和复选框。但似乎不是对齐的。 gridview 的元素也没有对齐。

我的代码如下:

<?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>

我想连续对齐文本视图和复选框。 gridview 的元素也必须对齐。请在这方面帮助我。

【问题讨论】:

    标签: android xml android-layout gridview


    【解决方案1】:

    试试这个。

    两种方式

    TextViewCheckBox 提供android:gravity="center_vertical"

    然后将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" />
    

    【讨论】:

    • 我已接受您的回答,因为它已完成。我想其他人会理解的。
    【解决方案2】:

    在你的 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>
    

    【讨论】:

      【解决方案3】:
      // 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>
      

      【讨论】:

        猜你喜欢
        • 2012-11-02
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-09-24
        • 2012-07-13
        • 2012-06-04
        • 2019-04-22
        • 1970-01-01
        相关资源
        最近更新 更多