GridLayout平均分配空间
始末:
在使用Gridlayout时,想要做一个横向平均分配的布局,像这样的:
都知道,设置一个columnCount 配合上app:layout_columnWeight="1"
即可
可是当某一个的文字过长时,就会出现下面的情况:
解决方案:
将所有的TextView加上一个属性:android:layout_width="0dp"
即可。
源码:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout 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.support.v7.widget.GridLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:columnCount="4">
<android.support.v7.widget.AppCompatTextView
android:layout_width="0dp"
android:background="@android:color/holo_blue_light"
android:drawableTop="@mipmap/ic_launcher"
android:gravity="center_horizontal"
android:text="张三的蜗居是不是你的"
app:layout_columnWeight="1" />
<android.support.v7.widget.AppCompatTextView
android:layout_width="0dp"
android:background="@android:color/holo_green_light"
android:drawableTop="@mipmap/ic_launcher"
android:gravity="center_horizontal"
android:text="张三的蜗"
app:layout_columnWeight="1" />
<android.support.v7.widget.AppCompatTextView
android:layout_width="0dp"
android:background="@android:color/holo_red_light"
android:drawableTop="@mipmap/ic_launcher"
android:gravity="center_horizontal"
android:text="张三的蜗"
app:layout_columnWeight="1" />
<android.support.v7.widget.AppCompatTextView
android:layout_width="0dp"
android:background="@android:color/holo_purple"
android:drawableTop="@mipmap/ic_launcher"
android:gravity="center_horizontal"
android:text="张三的蜗"
app:layout_columnWeight="1" />
</android.support.v7.widget.GridLayout>
</LinearLayout>