【问题标题】:Centering ImageView inside TableRow在 TableRow 中居中 ImageView
【发布时间】:2013-10-26 23:47:38
【问题描述】:

我在 TableLayout (TableRow) 中居中图像时遇到问题。 ImageView 总是在左侧,我需要让他居中。

这里是 XML:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:background="#fff2d8">

    <TableLayout
        android:layout_width="fill_parent"
        android:layout_height="0dp"
        android:layout_weight="1">

        <TableRow
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            >
            <ImageView
                android:layout_width="fill_parent"
                android:layout_height="fill_parent"
                android:src="@drawable/logo"
                android:id="@+id/imageView"
            />
        </TableRow>
    </TableLayout>

    <TableLayout
        android:layout_width="fill_parent"
        android:layout_height="0dp"
        android:layout_margin="10dp"
        android:layout_weight="1">
    <TableRow
          .
          .

有布局图:screenshot

我该怎么做?非常感谢您的帮助。

问候,彼得

【问题讨论】:

    标签: android android-layout


    【解决方案1】:

    像这样更新你的布局

     <TableLayout
            android:layout_width="fill_parent"
            android:layout_height="0dp"
            android:layout_weight="1" >
    
            <TableRow
                android:gravity="center_horizontal|center_vertical"
                android:layout_width="fill_parent"
                android:layout_height="fill_parent" >
    
                <ImageView
                    android:id="@+id/imageView"
                    android:background="@drawable/ic_launcher"
                    android:layout_width="fill_parent"
                    android:layout_height="fill_parent"
                    android:src="@drawable/logo" />
            </TableRow>
        </TableLayout>
    

    【讨论】:

      【解决方案2】:

      您可以将android:gravity="center" 添加到 TableRow 的 XML 定义中。

      【讨论】:

      • 这应该是公认的答案。准确地告诉你需要什么,而不是一堆无关紧要的东西。
      【解决方案3】:

      ImageView 中尝试android:layout_span="2"

      <TableLayout
              android:layout_width="fill_parent"
              android:layout_height="0dp"
              android:layout_weight="1">
      
              <TableRow
                  android:layout_width="fill_parent"
                  android:layout_height="fill_parent"
                  android:gravity="center">
                  <ImageView
                      android:layout_width="fill_parent"
                      android:layout_height="fill_parent"
                      android:src="@drawable/logo"
                      android:id="@+id/imageView"
                      android:layout_span="2"/>
              </TableRow>
          </TableLayout>
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-08-07
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-08-28
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多