高版本android型号手机动态添加GridLayout不显示问题

高版本android型号手机动态添加GridLayout不显示问题,第1张

在7.0版本的手机中,出现了动态添加GridLayout不显示,一直白板的问题。

经过多种LayoutParams的测试,发现GridLayout.LayoutParams并不能显示,LinearLayout.LayoutParams可以,这个时候我就有个灵感,可不可以把GridLayout.LayoutParams换成LinearLayout.LayoutParams,然后我就看GridLayout的源码方法,发现没有直接设置宽高的构造方法,然后找到一个set其他LayoutParams的方法,这个时候我就高兴了,我就直接在构造方法中写入LinearLayout.LayoutParams

就是这样,就解决了

rowSpec和columnSpec分别设置了一个按钮的位置是第几行和第几列。

(i / 4 + 2)的意思是String[] chars中id为i的元素,所处行数是i/4+2。因为i是int型,所以i/4向下取整。至于那个+2,无所谓的。

i%4的意思是i/4后的余数,因为计算器排版中一行有4个元素,所以比如2这个元素,它在String[] chars中id是9,那么他的位置是9/4的余数,也就是1,列数用0,1,2,3表示,所以它在第二列。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11362470.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-15
下一篇 2023-05-15

发表评论

登录后才能评论

评论列表(0条)

保存