Android GridView元素在行中重叠

Android GridView元素在行中重叠,第1张

概述我正在学习GridView.正如您从下面的屏幕截图中看到的,我添加了13个带有各种长度字符串的按钮作为文本.然而,长文本按钮相互重叠,我试过,但我无法解决它.我想要的是每一行都具有相同高度的最高元素,例如第1行中的所有按钮都应该具有“lorem ipsum dolor sit amet”的高度,而所有其他行应该具有最长的元素高度.我怎样才能做到这一点? 如果不可能,或者我可以有以下内容:所有元素都 我正在学习GrIDVIEw.正如您从下面的屏幕截图中看到的,我添加了13个带有各种长度字符串的按钮作为文本.然而,长文本按钮相互重叠,我试过,但我无法解决它.我想要的是每一行都具有相同高度的最高元素,例如第1行中的所有按钮都应该具有“lorem ipsum dolor sit amet”的高度,而所有其他行应该具有最长的元素高度.我怎样才能做到这一点?

如果不可能,或者我可以有以下内容:所有元素都是它们的大小,但是网格实际上不是矩形,它可以有以下方案:(实际上没有网格,它只是附加视图在列中一起,不考虑在哪里是实际网格.

------------------------------------------------||              |       2       |                ||      1       |----------------      3         ||              |               |----------------|---------------|       5       |                ||        4     |               |      6         ||------------------------------|-----------------

我的网格视图:

<GrIDVIEw    xmlns:androID="http://schemas.androID.com/apk/res/androID"    androID:ID="@+ID/grIDvIEw"    androID:layout_wIDth="fill_parent"    androID:layout_height="fill_parent"    androID:columnWIDth="90dp"    androID:gravity="fill_vertical"    androID:numColumns="3"    ></GrIDVIEw>

我的适配器类的getVIEw方法扩展了BaseAdapter:

public VIEw getVIEw(int position,VIEw convertVIEw,VIEwGroup arg2) {        button btn = null;        if (convertVIEw == null) {            btn = new button(mContext);        } else {            btn = (button) convertVIEw;        }        btn.setText(txts[position]);        return btn;    }

注意:我将使用自定义视图,我只是使用简单的按钮进行测试.

解决方法 你问的不是GrIDVIEw的能力.您可能希望在自定义GrIDvIEw中修改onMeasure.

另一方面,似乎你想要实现的是使用scrollvIEw和linearlayout(因为在你的模拟中,列是对齐的).

看看这篇文章:Android heterogeneous gridview like pinterest

总结

以上是内存溢出为你收集整理的Android GridView元素在行中重叠全部内容,希望文章能够帮你解决Android GridView元素在行中重叠所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

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

原文地址:https://www.54852.com/web/1124822.html

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

发表评论

登录后才能评论

评论列表(0条)

    保存