动态设置ListView高度,解决跟ScrollView嵌套冲突

当ScrollView中的ListView数据不定时,会导致显示问题,只显示一行数据。解决方法是动态设置ListView高度,需要item最外层布局为LinearLayout。提供代码示例来实现这一功能,从而避免嵌套冲突。

这篇文章说一个已经老掉牙的问题,但也算比较常见。
写一个布局的时候,难免会遇到界面中的控件已经超出了手机屏幕可显示的范围,这时候就需要在布局中放置一个ScrollView,使屏幕可以滚动。
当ScrollView中有ListView需要显示的时候,如果ListView是固定高度的,则可以显示正常;但如果ListView里面的数据是不定的,而ListView的高度也是随之变化的,嵌套在ScrollView中的ListView计算不出来高度,这是就会出现显示问题。
常见的现象就是:ListView只显示一行数据。
解决这个问题,就需要根据ListView中item的个数,通过代码动态设置ListView的高度。
动态设置高度对item布局有一个要求:item最外层布局需要是LinearLayout


具体该怎么写,附上一段代码,一看就懂

    private void initView() {
        attachmentListView = (ListView) findViewById(R.id.attachmentList);
        if (attachmentList.size() > 0) {
            attachmentListView.setVisibility(View.VISIBLE);
            attachmentAdapter = new OAAttachmentAdapter(this
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值