android GridLayout。。。

仅作为记录。。。

在使用GridLayout使用时需要注意首先要指定行数和列数,需要注意的是加入你指定了GridLayout的宽度和高度,然后你指定这个GridLayout为4行4列,这个GridLayout不会被平分为等大的16块,API level 21  时使用指定weight可以解决

android:layout_columnWeight="1"
android:layout_rowWeight="1"

API level 21之前的话,我一开始以为可以用指定weight的方式解决,但是GridLayout的子view没有weight属性,所以如果要适配多种分辨率的话解决的方法就是在代码中获得GridLayout的大小,然后计算,在给子view分配大小,很坑啊。。。所以这个GridLayout在api21之前基本就不怎么好用,除非是在指定既定分辨率的情况下才好用。。

还有一个方法是自定义GridLayout,重写其中的onlayout方法,我自己也尝试写了一下但是还没实现跨行跨列。

如果急用的话就推荐不使用GridLayout,用其他的布局代替。


你可能感兴趣的:(android)