gpt4 book ai didi

android - ListView 条目中的背景图像自发消失

转载 作者:行者123 更新时间:2023-11-29 02:13:08 25 4
gpt4 key购买 nike

我有一个用自定义布局填充的 ListView

<RelativeLayout android:id="@+id/relativeLayout1" android:layout_width="fill_parent" android:layout_height="fill_parent" xmlns:android="http://schemas.android.com/apk/res/android">
<ImageView android:src="@drawable/message_bg"
android:layout_width="fill_parent"
android:id="@+id/cellbg"
android:layout_alignTop="@+id/userPhoto"
android:layout_alignBottom="@+id/username"
android:layout_below="@+id/userPhoto"
android:layout_height="fill_parent"
android:scaleType="centerCrop"></ImageView>

<ImageView android:src="@drawable/default_photo"
android:id="@+id/userPhoto"
android:layout_alignParentLeft="true"
android:layout_width="40.0sp"
android:layout_height="40.0sp"
android:scaleType="center"></ImageView>

<TextView android:text="TextView"
android:id="@+id/messagePreview"
android:textSize="20.0sp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_toRightOf="@+id/userPhoto"
android:layout_alignTop="@+id/userPhoto"
android:lines="1"></TextView>

<TextView android:text="TextView"
android:id="@+id/username"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/messagePreview"
android:layout_alignLeft="@+id/messagePreview"
android:lines="1"></TextView>
</RelativeLayout>

那个 ImageView +@id/cellbg 在我的一些行中自发地消失了。我也在使用自定义列表适配器:

@Override
public View getView(int position, View convertView, ViewGroup parent)
{
View row;

if (null == convertView)
{
row = mInflater.inflate(R.layout.messagecell, null);
}
else
{
row = convertView;
}

Map<String,String> message = messageList.get(position);

TextView tv = (TextView) row.findViewById(R.id.username);
//tv.setTextColor(Liveblogging_Main.forColor);
tv.setText(message.get("CreatedBy"));

TextView tv2 = (TextView) row.findViewById(R.id.messagePreview);
//tv2.setTextColor(Liveblogging_Main.forColor);
tv2.setText(message.get("Description"));

ImageView iv = (ImageView) row.findViewById(R.id.userPhoto );
Drawable userIcon = Liveblogging_Main.GetImageForUser(message.get("CreatedBy"));
if ( userIcon == null )
{
GetUserImage(message.get("CreatedBy"));
userIcon = getResources().getDrawable(R.drawable.default_photo);
}
iv.setImageDrawable(userIcon);
LayoutParams params = iv.getLayoutParams();
params.width = 40;
params.height = 40;
iv.setLayoutParams(params);
iv.setScaleType(ScaleType.CENTER_CROP);

ImageView bg = (ImageView) row.findViewById(R.id.cellbg );
bg.setImageDrawable(getResources().getDrawable(R.drawable.message_bg));

return row;
}

你可以看到我在 imageview 上强行设置了 imagedrawable,但它有时在滚动过程中仍然消失。有什么想法吗?

编辑:

这也是我的 ListView 代码

<LinearLayout   android:id="@+id/linearLayout1" 
android:layout_width="fill_parent"
android:layout_height="fill_parent"
xmlns:android="http://schemas.android.com/apk/res/android">

<ListView android:id="@android:id/list"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:cacheColorHint="#00000000"
>
</ListView>

</LinearLayout>

最佳答案

尝试设置 XML 属性

android:scrollingCache="false"

在你的 ListView 中。

关于android - ListView 条目中的背景图像自发消失,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6063090/

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