gpt4 book ai didi

java - 包含文本和图像的 ListView - 如果不存在图像,我可以更改 XML(或参数)吗?

转载 作者:行者123 更新时间:2023-12-02 07:41:48 26 4
gpt4 key购买 nike

我在 listView 中有一个文章列表,左侧有文本,右侧有图像。如果文章没有图像,我希望文本为全角(而不是 marginRight 为 60dp)。

我的 noob-java 思维过程是:我已经在循环并检查是否有图像...(如果有,我会更改显示的图像)在该循环中,我可以以某种方式使用 java 来更改我的 View 的 XML 来添加或删除 imageView 以及添加或删除边距?

我用来重复和更改图像的代码:

    ImageLoader imageLoader = ImageLoader.getInstance();

imageLoader.displayImage("", viewHolder.thumbView); //clears previous one
if(article.filepath != null && article.filepath.length() != 0) {
imageLoader.displayImage(
"http://img.mysite.com/processes/resize.php?image=" + article.filepath + "&size=100&quality=70",
viewHolder.thumbView
);
}

我的“article_entry_list_adapter.xml”:

<?xml version="1.0" encoding="utf-8"?>

<!-- Layout for individual news entries in a list -->
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:padding="10dp" >

<!-- Title of the news entry -->
<TextView
android:id="@+id/article_title"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginRight="60dp"
android:textSize="13sp"
android:textStyle="bold"
android:textColor="@drawable/list_title_selector" android:typeface="serif"/>

<!-- Subtitle contains author and date -->
<TextView
android:id="@+id/article_subtitle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="60dp"
android:layout_alignLeft="@id/article_title"
android:layout_below="@id/article_title"
android:textSize="11sp"
android:textColor="@drawable/list_subtitle_selector" />

<com.sltrib.views.WebImageView
android:id="@+id/article_thumbnail"
android:layout_width="50dp"
android:layout_height="50dp"
android:adjustViewBounds="true"
android:layout_alignParentRight="true"
android:background="@color/super_light_gray"
android:padding="1dp"
android:scaleType="centerCrop" android:cropToPadding="true"/>

</RelativeLayout>

最佳答案

我建议将您的 xml 布局更改为如下所示:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:padding="10dp" >

<!-- Title of the news entry -->

<com.sltrib.views.WebImageView
android:id="@+id/article_thumbnail"
android:layout_width="50dp"
android:layout_height="50dp"
android:layout_alignParentRight="true"
android:adjustViewBounds="true"
android:background="@color/super_light_gray"
android:cropToPadding="true"
android:padding="1dp"
android:scaleType="centerCrop"
/>

<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginRight="5dip"
android:layout_toLeftOf="@id/article_thumbnail"
android:orientation="vertical" >

<TextView
android:id="@+id/article_title"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Titol"
android:textColor="@drawable/list_title_selector"
android:textSize="13sp"
android:textStyle="bold"
android:typeface="serif" />

<TextView
android:id="@+id/article_subtitle"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Subtitol"
android:textColor="@drawable/list_subtitle_selector"
android:textSize="11sp" />

</LinearLayout>

然后,当没有图像时,只需将 WebImageView 可见性设置为 GONE,文本就会采用父级的宽度。

以你的例子:

viewHolder.thumbView.setVisibility(View.VISIBLE); //to show the image
viewHolder.thumbView.setVisibility(View.GONE); //to hide the image

关于java - 包含文本和图像的 ListView - 如果不存在图像,我可以更改 XML(或参数)吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11478401/

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