GridLayout 不响应 ImageView
GridLayout not responsive with ImageView
我正在使用 android.support.v7.widget.GridLayout
制作 3x3 的 ImageView 网格。我希望它能够响应所有屏幕。
下面是我的layout.xml。但是如果我使用 columnWeight
和 app:layout_gravity="fill_horizontal"
则看不到任何图像。但是如果我提供固体 width
和 height
那么它的工作。
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout 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="match_parent"
android:orientation="vertical"
android:padding="10dp">
<TextView
android:id="@+id/aodText"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:text="@string/activity_of_day"
android:textAppearance="@style/TextAppearance.FontPath"
android:textColor="#fff"
android:textSize="30sp" />
<android.support.v7.widget.CardView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_below="@id/aodText"
android:layout_marginTop="10dp"
app:cardCornerRadius="5dp"
app:cardElevation="2dp"
app:cardUseCompatPadding="true">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout
android:id="@+id/linearLayout"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentEnd="true"
android:padding="10dp">
<ImageView
android:id="@+id/refresh"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginEnd="5dp"
android:src="@drawable/ic_action_name" />
<ImageView
android:id="@+id/shareColoredKolam"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="5dp"
android:src="@drawable/ic_action_facebook" />
</LinearLayout>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_above="@+id/colorLayout"
android:layout_below="@+id/linearLayout">
<android.support.v7.widget.CardView
android:id="@+id/colorKolamCard"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
app:cardCornerRadius="2dp"
app:cardElevation="2dp"
app:cardUseCompatPadding="true"
app:contentPadding="16dp">
<android.support.v7.widget.GridLayout
android:id="@+id/gridLayout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:columnCount="3"
app:rowCount="3">
<ImageView
android:id="@+id/r1c1"
android:layout_width="0dp"
android:layout_height="84dp"
android:adjustViewBounds="true"
android:scaleType="fitXY"
android:src="@drawable/a270"
app:layout_columnWeight="1"
app:layout_gravity="fill_horizontal" />
<ImageView
android:id="@+id/r1c2"
android:layout_width="0dp"
android:layout_height="84dp"
android:adjustViewBounds="true"
android:scaleType="fitXY"
android:src="@drawable/c0"
app:layout_columnWeight="1"
app:layout_gravity="fill_horizontal" />
<ImageView
android:id="@+id/r1c3"
android:layout_width="0dp"
android:layout_height="84dp"
android:adjustViewBounds="true"
android:scaleType="fitXY"
android:src="@drawable/a0"
app:layout_columnWeight="1"
app:layout_gravity="fill_horizontal" />
<ImageView
android:id="@+id/r2c1"
android:layout_width="0dp"
android:layout_height="84dp"
android:adjustViewBounds="true"
android:scaleType="fitXY"
android:src="@drawable/c270"
app:layout_columnWeight="1"
app:layout_gravity="fill_horizontal" />
<ImageView
android:id="@+id/r2c2"
android:layout_width="0dp"
android:layout_height="84dp"
android:adjustViewBounds="true"
android:scaleType="fitXY"
android:src="@drawable/e90"
app:layout_columnWeight="1"
app:layout_gravity="fill_horizontal" />
<ImageView
android:id="@+id/r2c3"
android:layout_width="0dp"
android:layout_height="84dp"
android:adjustViewBounds="true"
android:scaleType="fitXY"
android:src="@drawable/c90"
app:layout_columnWeight="1"
app:layout_gravity="fill_horizontal" />
<ImageView
android:id="@+id/r3c1"
android:layout_width="0dp"
android:layout_height="84dp"
android:scaleType="fitXY"
android:src="@drawable/a180"
app:layout_columnWeight="1"
app:layout_gravity="fill_horizontal" />
<ImageView
android:id="@+id/r3c2"
android:layout_width="0dp"
android:layout_height="84dp"
android:scaleType="fitXY"
android:src="@drawable/c180"
app:layout_columnWeight="1"
app:layout_gravity="fill_horizontal" />
<ImageView
android:id="@+id/r3c3"
android:layout_width="0dp"
android:layout_height="84dp"
android:scaleType="fitXY"
android:src="@drawable/a90"
app:layout_columnWeight="1"
app:layout_gravity="fill_horizontal" />
</android.support.v7.widget.GridLayout>
</android.support.v7.widget.CardView>
</RelativeLayout>
<android.support.v7.widget.CardView
android:id="@+id/colorLayout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
app:cardCornerRadius="1dp"
app:cardElevation="3dp">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="10dp"
android:gravity="center"
android:padding="16dp">
<android.support.v7.widget.GridLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:columnCount="10"
app:rowCount="2">
<ImageView
android:id="@+id/redBtn"
android:layout_width="22dp"
android:layout_height="22dp"
android:layout_margin="1dp"
android:src="@drawable/rounded_button" />
<ImageView
android:id="@+id/pinkBtn"
android:layout_width="22dp"
android:layout_height="22dp"
android:layout_margin="1dp"
android:src="@drawable/rounded_button" />
<ImageView
android:id="@+id/purpleBtn"
android:layout_width="22dp"
android:layout_height="22dp"
android:layout_margin="1dp"
android:src="@drawable/rounded_button" />
<ImageView
android:id="@+id/deepPurpleBtn"
android:layout_width="22dp"
android:layout_height="22dp"
android:layout_margin="1dp"
android:src="@drawable/rounded_button" />
<ImageView
android:id="@+id/indigoBtn"
android:layout_width="22dp"
android:layout_height="22dp"
android:layout_margin="1dp"
android:src="@drawable/rounded_button" />
<ImageView
android:id="@+id/blueBtn"
android:layout_width="22dp"
android:layout_height="22dp"
android:layout_margin="1dp"
android:src="@drawable/rounded_button" />
<ImageView
android:id="@+id/lightBlueBtn"
android:layout_width="22dp"
android:layout_height="22dp"
android:layout_margin="1dp"
android:src="@drawable/rounded_button" />
<ImageView
android:id="@+id/cyanBtn"
android:layout_width="22dp"
android:layout_height="22dp"
android:layout_margin="1dp"
android:src="@drawable/rounded_button" />
<ImageView
android:id="@+id/tealBtn"
android:layout_width="22dp"
android:layout_height="22dp"
android:layout_margin="1dp"
android:src="@drawable/rounded_button" />
<ImageView
android:id="@+id/greenBtn"
android:layout_width="22dp"
android:layout_height="22dp"
android:layout_margin="1dp"
android:src="@drawable/rounded_button" />
<ImageView
android:id="@+id/lightGreenBtn"
android:layout_width="22dp"
android:layout_height="22dp"
android:layout_margin="1dp"
android:src="@drawable/rounded_button" />
<ImageView
android:id="@+id/limeBtn"
android:layout_width="22dp"
android:layout_height="22dp"
android:layout_margin="1dp"
android:src="@drawable/rounded_button" />
<ImageView
android:id="@+id/yellowBtn"
android:layout_width="22dp"
android:layout_height="22dp"
android:layout_margin="1dp"
android:src="@drawable/rounded_button" />
<ImageView
android:id="@+id/amberBtn"
android:layout_width="22dp"
android:layout_height="22dp"
android:layout_margin="1dp"
android:src="@drawable/rounded_button" />
<ImageView
android:id="@+id/orangeBtn"
android:layout_width="22dp"
android:layout_height="22dp"
android:layout_margin="1dp"
android:src="@drawable/rounded_button" />
<ImageView
android:id="@+id/deepOrangeBtn"
android:layout_width="22dp"
android:layout_height="22dp"
android:layout_margin="1dp"
android:src="@drawable/rounded_button" />
<ImageView
android:id="@+id/brownBtn"
android:layout_width="22dp"
android:layout_height="22dp"
android:layout_margin="1dp"
android:src="@drawable/rounded_button" />
<ImageView
android:id="@+id/blueGreyBtn"
android:layout_width="22dp"
android:layout_height="22dp"
android:layout_margin="1dp"
android:src="@drawable/rounded_button" />
<ImageView
android:id="@+id/greyBtn"
android:layout_width="22dp"
android:layout_height="22dp"
android:layout_margin="1dp"
android:src="@drawable/rounded_button" />
<ImageView
android:id="@+id/whiteBtn"
android:layout_width="22dp"
android:layout_height="22dp"
android:layout_margin="1dp"
android:src="@drawable/rounded_button" />
</android.support.v7.widget.GridLayout>
</RelativeLayout>
</android.support.v7.widget.CardView>
<!--<me.zhanghai.android.materialprogressbar.MaterialProgressBar-->
<!--android:layout_width="wrap_content"-->
<!--android:id="@+id/pdfProgressBar"-->
<!--android:layout_centerInParent="true"-->
<!--style="@style/Widget.MaterialProgressBar.ProgressBar.Large"-->
<!--android:indeterminate="true"-->
<!--android:layout_height="wrap_content" />-->
<!--<com.github.barteksc.pdfviewer.PDFView-->
<!--android:id="@+id/kodpdfView"-->
<!--android:visibility="gone"-->
<!--android:layout_width="match_parent"-->
<!--android:layout_height="match_parent" />-->
</RelativeLayout>
</android.support.v7.widget.CardView>
</RelativeLayout>
这是输出:
为什么我看不到图片?
尝试为网格布局赋予宽度android:layout_width="match_parent"
和 imageview scaleType=fitXY
我正在使用 android.support.v7.widget.GridLayout
制作 3x3 的 ImageView 网格。我希望它能够响应所有屏幕。
下面是我的layout.xml。但是如果我使用 columnWeight
和 app:layout_gravity="fill_horizontal"
则看不到任何图像。但是如果我提供固体 width
和 height
那么它的工作。
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout 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="match_parent"
android:orientation="vertical"
android:padding="10dp">
<TextView
android:id="@+id/aodText"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:text="@string/activity_of_day"
android:textAppearance="@style/TextAppearance.FontPath"
android:textColor="#fff"
android:textSize="30sp" />
<android.support.v7.widget.CardView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_below="@id/aodText"
android:layout_marginTop="10dp"
app:cardCornerRadius="5dp"
app:cardElevation="2dp"
app:cardUseCompatPadding="true">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout
android:id="@+id/linearLayout"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentEnd="true"
android:padding="10dp">
<ImageView
android:id="@+id/refresh"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginEnd="5dp"
android:src="@drawable/ic_action_name" />
<ImageView
android:id="@+id/shareColoredKolam"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="5dp"
android:src="@drawable/ic_action_facebook" />
</LinearLayout>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_above="@+id/colorLayout"
android:layout_below="@+id/linearLayout">
<android.support.v7.widget.CardView
android:id="@+id/colorKolamCard"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
app:cardCornerRadius="2dp"
app:cardElevation="2dp"
app:cardUseCompatPadding="true"
app:contentPadding="16dp">
<android.support.v7.widget.GridLayout
android:id="@+id/gridLayout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:columnCount="3"
app:rowCount="3">
<ImageView
android:id="@+id/r1c1"
android:layout_width="0dp"
android:layout_height="84dp"
android:adjustViewBounds="true"
android:scaleType="fitXY"
android:src="@drawable/a270"
app:layout_columnWeight="1"
app:layout_gravity="fill_horizontal" />
<ImageView
android:id="@+id/r1c2"
android:layout_width="0dp"
android:layout_height="84dp"
android:adjustViewBounds="true"
android:scaleType="fitXY"
android:src="@drawable/c0"
app:layout_columnWeight="1"
app:layout_gravity="fill_horizontal" />
<ImageView
android:id="@+id/r1c3"
android:layout_width="0dp"
android:layout_height="84dp"
android:adjustViewBounds="true"
android:scaleType="fitXY"
android:src="@drawable/a0"
app:layout_columnWeight="1"
app:layout_gravity="fill_horizontal" />
<ImageView
android:id="@+id/r2c1"
android:layout_width="0dp"
android:layout_height="84dp"
android:adjustViewBounds="true"
android:scaleType="fitXY"
android:src="@drawable/c270"
app:layout_columnWeight="1"
app:layout_gravity="fill_horizontal" />
<ImageView
android:id="@+id/r2c2"
android:layout_width="0dp"
android:layout_height="84dp"
android:adjustViewBounds="true"
android:scaleType="fitXY"
android:src="@drawable/e90"
app:layout_columnWeight="1"
app:layout_gravity="fill_horizontal" />
<ImageView
android:id="@+id/r2c3"
android:layout_width="0dp"
android:layout_height="84dp"
android:adjustViewBounds="true"
android:scaleType="fitXY"
android:src="@drawable/c90"
app:layout_columnWeight="1"
app:layout_gravity="fill_horizontal" />
<ImageView
android:id="@+id/r3c1"
android:layout_width="0dp"
android:layout_height="84dp"
android:scaleType="fitXY"
android:src="@drawable/a180"
app:layout_columnWeight="1"
app:layout_gravity="fill_horizontal" />
<ImageView
android:id="@+id/r3c2"
android:layout_width="0dp"
android:layout_height="84dp"
android:scaleType="fitXY"
android:src="@drawable/c180"
app:layout_columnWeight="1"
app:layout_gravity="fill_horizontal" />
<ImageView
android:id="@+id/r3c3"
android:layout_width="0dp"
android:layout_height="84dp"
android:scaleType="fitXY"
android:src="@drawable/a90"
app:layout_columnWeight="1"
app:layout_gravity="fill_horizontal" />
</android.support.v7.widget.GridLayout>
</android.support.v7.widget.CardView>
</RelativeLayout>
<android.support.v7.widget.CardView
android:id="@+id/colorLayout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
app:cardCornerRadius="1dp"
app:cardElevation="3dp">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="10dp"
android:gravity="center"
android:padding="16dp">
<android.support.v7.widget.GridLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:columnCount="10"
app:rowCount="2">
<ImageView
android:id="@+id/redBtn"
android:layout_width="22dp"
android:layout_height="22dp"
android:layout_margin="1dp"
android:src="@drawable/rounded_button" />
<ImageView
android:id="@+id/pinkBtn"
android:layout_width="22dp"
android:layout_height="22dp"
android:layout_margin="1dp"
android:src="@drawable/rounded_button" />
<ImageView
android:id="@+id/purpleBtn"
android:layout_width="22dp"
android:layout_height="22dp"
android:layout_margin="1dp"
android:src="@drawable/rounded_button" />
<ImageView
android:id="@+id/deepPurpleBtn"
android:layout_width="22dp"
android:layout_height="22dp"
android:layout_margin="1dp"
android:src="@drawable/rounded_button" />
<ImageView
android:id="@+id/indigoBtn"
android:layout_width="22dp"
android:layout_height="22dp"
android:layout_margin="1dp"
android:src="@drawable/rounded_button" />
<ImageView
android:id="@+id/blueBtn"
android:layout_width="22dp"
android:layout_height="22dp"
android:layout_margin="1dp"
android:src="@drawable/rounded_button" />
<ImageView
android:id="@+id/lightBlueBtn"
android:layout_width="22dp"
android:layout_height="22dp"
android:layout_margin="1dp"
android:src="@drawable/rounded_button" />
<ImageView
android:id="@+id/cyanBtn"
android:layout_width="22dp"
android:layout_height="22dp"
android:layout_margin="1dp"
android:src="@drawable/rounded_button" />
<ImageView
android:id="@+id/tealBtn"
android:layout_width="22dp"
android:layout_height="22dp"
android:layout_margin="1dp"
android:src="@drawable/rounded_button" />
<ImageView
android:id="@+id/greenBtn"
android:layout_width="22dp"
android:layout_height="22dp"
android:layout_margin="1dp"
android:src="@drawable/rounded_button" />
<ImageView
android:id="@+id/lightGreenBtn"
android:layout_width="22dp"
android:layout_height="22dp"
android:layout_margin="1dp"
android:src="@drawable/rounded_button" />
<ImageView
android:id="@+id/limeBtn"
android:layout_width="22dp"
android:layout_height="22dp"
android:layout_margin="1dp"
android:src="@drawable/rounded_button" />
<ImageView
android:id="@+id/yellowBtn"
android:layout_width="22dp"
android:layout_height="22dp"
android:layout_margin="1dp"
android:src="@drawable/rounded_button" />
<ImageView
android:id="@+id/amberBtn"
android:layout_width="22dp"
android:layout_height="22dp"
android:layout_margin="1dp"
android:src="@drawable/rounded_button" />
<ImageView
android:id="@+id/orangeBtn"
android:layout_width="22dp"
android:layout_height="22dp"
android:layout_margin="1dp"
android:src="@drawable/rounded_button" />
<ImageView
android:id="@+id/deepOrangeBtn"
android:layout_width="22dp"
android:layout_height="22dp"
android:layout_margin="1dp"
android:src="@drawable/rounded_button" />
<ImageView
android:id="@+id/brownBtn"
android:layout_width="22dp"
android:layout_height="22dp"
android:layout_margin="1dp"
android:src="@drawable/rounded_button" />
<ImageView
android:id="@+id/blueGreyBtn"
android:layout_width="22dp"
android:layout_height="22dp"
android:layout_margin="1dp"
android:src="@drawable/rounded_button" />
<ImageView
android:id="@+id/greyBtn"
android:layout_width="22dp"
android:layout_height="22dp"
android:layout_margin="1dp"
android:src="@drawable/rounded_button" />
<ImageView
android:id="@+id/whiteBtn"
android:layout_width="22dp"
android:layout_height="22dp"
android:layout_margin="1dp"
android:src="@drawable/rounded_button" />
</android.support.v7.widget.GridLayout>
</RelativeLayout>
</android.support.v7.widget.CardView>
<!--<me.zhanghai.android.materialprogressbar.MaterialProgressBar-->
<!--android:layout_width="wrap_content"-->
<!--android:id="@+id/pdfProgressBar"-->
<!--android:layout_centerInParent="true"-->
<!--style="@style/Widget.MaterialProgressBar.ProgressBar.Large"-->
<!--android:indeterminate="true"-->
<!--android:layout_height="wrap_content" />-->
<!--<com.github.barteksc.pdfviewer.PDFView-->
<!--android:id="@+id/kodpdfView"-->
<!--android:visibility="gone"-->
<!--android:layout_width="match_parent"-->
<!--android:layout_height="match_parent" />-->
</RelativeLayout>
</android.support.v7.widget.CardView>
</RelativeLayout>
这是输出:
为什么我看不到图片?
尝试为网格布局赋予宽度android:layout_width="match_parent"
和 imageview scaleType=fitXY