在网格布局中对齐列
Aligning columns in gridlayout
Android Studio 2.1.1
这就是我当前 xml 下面的内容。
不过,这是我的预期。
我想对齐图标旁边的 "LAST SALE 0" TextView。但是,"LAST SALE .." 在第 2 列,图标在第 1 列。
是否可以在 GridLayout 中执行此操作?
非常感谢您的任何建议,
我正在使用网格布局,这是我的 xml
android.support.v7.widget.GridLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:columnCount="3"
app:rowCount="5">
<!-- Row 1 -->
<ImageView
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:layout_marginStart="8dp"
android:id="@+id/ivOptions"
android:src="@drawable/ic_remove_circle_outline_black_24dp"/>
<TextView
android:id="@+id/tvSize"
app:layout_columnSpan="2"
android:text="Size 8.0/ Tubular Doom Primeknit Core Black"
android:textSize="14sp"
android:textColor="@android:color/black"
android:fontFamily="sans-serif-condensed"/>
<!-- Row 2 -->
<TextView
android:id="@+id/tvPartNumber"
app:layout_column="1"
app:layout_columnSpan="2"
android:text="S74921"
android:textSize="12sp"
app:layout_row="1" />
<!-- Row 3 -->
<ImageView
android:id="@+id/ivSneaker"
android:layout_width="80dp"
android:layout_height="50dp"
app:layout_gravity="center"
app:layout_columnWeight="1"
android:src="@drawable/sneakers_200"
android:scaleType="fitXY"/>
<include
android:id="@+id/top_offers"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
app:layout_gravity="center"
layout="@layout/top_offers"/>
<include
android:layout_height="wrap_content"
android:layout_width="wrap_content"
app:layout_gravity="center"
app:layout_columnWeight="1"
layout="@layout/offers_button"/>
<!-- Row 4 -->
<ImageView
android:layout_width="wrap_content"
app:layout_column="1"
android:layout_marginEnd="8dp"
android:src="@drawable/ic_trending_down_black_24dp"/>
<TextView
android:id="@+id/tvLastSale"
app:layout_gravity="center_vertical"
android:text="LAST SALE 0"/>
</android.support.v7.widget.GridLayout>
通过创建一个带有图标和文本的新 linearLayout 设法做到了这一点。然后将其包含在第 1 列中:
<!-- Row 4 -->
<include
app:layout_column="1"
layout="@layout/last_sale_row"/>
Android Studio 2.1.1
这就是我当前 xml 下面的内容。
不过,这是我的预期。
我想对齐图标旁边的 "LAST SALE 0" TextView。但是,"LAST SALE .." 在第 2 列,图标在第 1 列。
是否可以在 GridLayout 中执行此操作?
非常感谢您的任何建议,
我正在使用网格布局,这是我的 xml
android.support.v7.widget.GridLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:columnCount="3"
app:rowCount="5">
<!-- Row 1 -->
<ImageView
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:layout_marginStart="8dp"
android:id="@+id/ivOptions"
android:src="@drawable/ic_remove_circle_outline_black_24dp"/>
<TextView
android:id="@+id/tvSize"
app:layout_columnSpan="2"
android:text="Size 8.0/ Tubular Doom Primeknit Core Black"
android:textSize="14sp"
android:textColor="@android:color/black"
android:fontFamily="sans-serif-condensed"/>
<!-- Row 2 -->
<TextView
android:id="@+id/tvPartNumber"
app:layout_column="1"
app:layout_columnSpan="2"
android:text="S74921"
android:textSize="12sp"
app:layout_row="1" />
<!-- Row 3 -->
<ImageView
android:id="@+id/ivSneaker"
android:layout_width="80dp"
android:layout_height="50dp"
app:layout_gravity="center"
app:layout_columnWeight="1"
android:src="@drawable/sneakers_200"
android:scaleType="fitXY"/>
<include
android:id="@+id/top_offers"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
app:layout_gravity="center"
layout="@layout/top_offers"/>
<include
android:layout_height="wrap_content"
android:layout_width="wrap_content"
app:layout_gravity="center"
app:layout_columnWeight="1"
layout="@layout/offers_button"/>
<!-- Row 4 -->
<ImageView
android:layout_width="wrap_content"
app:layout_column="1"
android:layout_marginEnd="8dp"
android:src="@drawable/ic_trending_down_black_24dp"/>
<TextView
android:id="@+id/tvLastSale"
app:layout_gravity="center_vertical"
android:text="LAST SALE 0"/>
</android.support.v7.widget.GridLayout>
通过创建一个带有图标和文本的新 linearLayout 设法做到了这一点。然后将其包含在第 1 列中:
<!-- Row 4 -->
<include
app:layout_column="1"
layout="@layout/last_sale_row"/>