相关疑难解决方法(0)

使用Picasso将图像调整为全宽和固定高度

我有一个垂直的LinearLayout,其中一个项目是ImageView使用Picasso加载的.我需要将图像的宽度提升到整个设备宽度,并显示图像的中心部分被固定高度(150dp)裁剪.我目前有以下代码:

Picasso.with(getActivity()) 
    .load(imageUrl) 
    .placeholder(R.drawable.placeholder) 
    .error(R.drawable.error) 
    .resize(screenWidth, imageHeight)
    .centerInside() 
    .into(imageView);
Run Code Online (Sandbox Code Playgroud)

我应该把哪个值成screenWidthimageHeight(= 150dp)?

java android image-resizing imageview picasso

163
推荐指数
2
解决办法
9万
查看次数

毕加索在调整图像大小时不会保留纵横比

我想保留imageView的纵横比,并调整它以尽可能大地填充/调整,而不会使用Picasso扭曲/改变它的纵横比.

到目前为止,我发现了这个:

在毕加索缩放图像大小

建议使用:

.fit().centerInside() 
Run Code Online (Sandbox Code Playgroud)

但是当我尝试时:

        Picasso.with(this).load(boxart)
.fit().centerInside() 
        .into(imageItem);
Run Code Online (Sandbox Code Playgroud)

和我的XML一起:

    <RelativeLayout
        android:id="@+id/rl_ListView1"
        android:layout_width="0dp"
        android:layout_height="match_parent"
        android:layout_alignParentLeft="true"
        android:layout_centerInParent="true"
        android:layout_gravity="left"
        android:layout_weight="0.3" >

        <ImageView
            android:id="@+id/imageView1"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:layout_alignParentLeft="true"
            android:layout_alignParentTop="true"
            android:scaleType="fitXY"
            android:layout_gravity="left" />
    </RelativeLayout>
Run Code Online (Sandbox Code Playgroud)

然而,图像仍然显得扭曲(它看起来太长而且很瘦 - 它的原始宽高比是扭曲的)我不确定为什么.

在此输入图像描述

android android-layout picasso android-relativelayout

12
推荐指数
1
解决办法
6175
查看次数