无法围绕使用 Picasso 加载的图像环绕相对布局
Unable to Wrap Relative Layout around Image Loaded using Picaso
我有一个带有自定义适配器的列表视图。
<?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="wrap_content"
android:gravity="center_vertical"
android:layout_margin="10dp"
android:background="@drawable/product_list_item_bg" >
<ImageView
android:id="@+id/iv_thumb"
android:layout_width="120dp"
android:layout_height="100dp"
android:layout_marginRight="10dp"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
/>
<TextView
android:id="@+id/tv_title"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignTop="@+id/iv_thumb"
android:layout_marginLeft="5sp"
android:layout_marginTop="15dp"
android:layout_toRightOf="@+id/iv_thumb"
android:textColor="@color/text_color"
android:ellipsize="marquee"
android:singleLine="true"
android:textSize="24sp"
android:marqueeRepeatLimit="marquee_forever"
android:scrollHorizontally="true"
android:textStyle="bold"></TextView>
<TextView
android:id="@+id/tv_dealer_name"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="left"
android:ellipsize="end"
android:textColor="@color/text_color"
android:layout_alignLeft="@+id/tv_title"
android:layout_below="@+id/tv_title"
android:textSize="18sp"
android:textAppearance="?android:attr/textAppearanceSmall" />
</RelativeLayout>
product_list_item_bg.xml
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle" android:padding="5dp">
<solid android:color="#c6e2b2"/>
<corners
android:bottomRightRadius="5dp"
android:bottomLeftRadius="5dp"
android:topLeftRadius="5dp"
android:topRightRadius="5dp"/>
</shape>
当我使用虚拟占位符时,该行正确环绕图像,但是当使用适配器中的 picaso 加载自定义图像时,顶部和底部留有间隙。
Picasso.with(context)
.load(img_url)
.placeholder(R.drawable.dummy_placeholder)
.error(R.drawable.dummy_placeholder)
.into(holder.iv_ThumbImage);
我试过在相对布局中使用 wrap_content 它不起作用。
如果你的意思是你的 RelativeLayout
和 ImageView
在你为你的 ImageView
设置新的 Bitmap
时没有调整大小,我认为设置属性 android:adjustViewBounds
的 ImageView
到 true
将完成您的工作。当然你的ImageView
和RelativeLayout
的height
和width
需要是wrap_content
我有一个带有自定义适配器的列表视图。
<?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="wrap_content"
android:gravity="center_vertical"
android:layout_margin="10dp"
android:background="@drawable/product_list_item_bg" >
<ImageView
android:id="@+id/iv_thumb"
android:layout_width="120dp"
android:layout_height="100dp"
android:layout_marginRight="10dp"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
/>
<TextView
android:id="@+id/tv_title"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignTop="@+id/iv_thumb"
android:layout_marginLeft="5sp"
android:layout_marginTop="15dp"
android:layout_toRightOf="@+id/iv_thumb"
android:textColor="@color/text_color"
android:ellipsize="marquee"
android:singleLine="true"
android:textSize="24sp"
android:marqueeRepeatLimit="marquee_forever"
android:scrollHorizontally="true"
android:textStyle="bold"></TextView>
<TextView
android:id="@+id/tv_dealer_name"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="left"
android:ellipsize="end"
android:textColor="@color/text_color"
android:layout_alignLeft="@+id/tv_title"
android:layout_below="@+id/tv_title"
android:textSize="18sp"
android:textAppearance="?android:attr/textAppearanceSmall" />
</RelativeLayout>
product_list_item_bg.xml
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle" android:padding="5dp">
<solid android:color="#c6e2b2"/>
<corners
android:bottomRightRadius="5dp"
android:bottomLeftRadius="5dp"
android:topLeftRadius="5dp"
android:topRightRadius="5dp"/>
</shape>
当我使用虚拟占位符时,该行正确环绕图像,但是当使用适配器中的 picaso 加载自定义图像时,顶部和底部留有间隙。
Picasso.with(context)
.load(img_url)
.placeholder(R.drawable.dummy_placeholder)
.error(R.drawable.dummy_placeholder)
.into(holder.iv_ThumbImage);
我试过在相对布局中使用 wrap_content 它不起作用。
如果你的意思是你的 RelativeLayout
和 ImageView
在你为你的 ImageView
设置新的 Bitmap
时没有调整大小,我认为设置属性 android:adjustViewBounds
的 ImageView
到 true
将完成您的工作。当然你的ImageView
和RelativeLayout
的height
和width
需要是wrap_content