gpt4 book ai didi

android - 使用自定义适配器删除 ListView 行之间的间距

转载 作者:行者123 更新时间:2023-11-30 02:56:46 25 4
gpt4 key购买 nike

我正在尝试弄清楚如何使用在 getView()< 中返回 ImageView 的自定义适配器删除 ListView 中行之间的间距 函数。

问题的可视化表示: enter image description here

ListView 当前位于 RelativeLayout 中。

我曾尝试在 ListView 上将填充、分隔符和边距全部设置为 0dp,但没有成功。我还尝试在 getView() 函数中为每个单独的 ImageView 项目设置填充 - 都没有运气。

如何删除 ListView 行之间的所有填充/边距/间距?我愿意接受任何基于 Java 或 XML 的解决方案。

ListView XML:

<ListView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/listView1"
android:layout_below="@+id/img1"
android:layout_centerHorizontal="true"
android:layout_above="@+id/textView"
android:fastScrollEnabled="false"
android:divider="@null"
android:padding="0dp"
android:layout_margin="0dp"
android:dividerHeight="0dp"
/>

相关的getView()适配器代码

#some irrelevant code to load images

viewGroup.setClipToPadding(false);
viewGroup.setPadding(0,0,0,0);


if(view == null){
ImageView newView = new ImageView(this.context);
newView.setImageDrawable(img);
newView.setPadding(0,0,0,0);
return newView;
}
else{

((ImageView) view).setImageDrawable(img);
return view;
}

最佳答案

想通了。我需要在新的 ImageView 上使用 setAdjustViewBounds

getView() 中原始代码的示例:

        if(view == null){
ImageView newView = new ImageView(this.context);
newView.setImageDrawable(img);
newView.setPadding(0,0,0,0);
newView.setAdjustViewBounds(true);
return newView;
}
else{

((ImageView) view).setImageDrawable(img);
return view;
}

关于android - 使用自定义适配器删除 ListView 行之间的间距,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23136424/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com