gpt4 book ai didi

android - Volley 无法正确调整图像大小

转载 作者:行者123 更新时间:2023-11-30 02:41:43 24 4
gpt4 key购买 nike

我正在使用 youtube 的一项服务,它会向我返回一个 URL。通过这个 URL,我进行了一个 NetworkImageView。问题是图像没有占用我定义字段 NetworkImageView 的所有空间

我的网址

https://i.ytimg.com/vi/2HA41DV_K7s/hqdefault.jpg

XML

<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal">

<com.android.volley.toolbox.NetworkImageView
android:id="@+id/banner_channel"
android:layout_width="120dp"
android:layout_height="90dp"
android:scaleType="centerCrop"
android:layout_marginLeft="15dp"
android:layout_marginTop="10dp" />
</LinearLayout>

在我的适配器中

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

Context ctx = parent.getContext();
if (convertView == null) {
convertView = LayoutInflater.from(ctx).inflate(LAYOUT, null);
}
NetworkImageView img = (NetworkImageView) convertView.findViewById(R.id.banner_channel);


img.setImageUrl(mVideoList.items.get(position).snippet.thumbnails.high.url, VolleySingleton.getInstance(
ctx).getImageLoader());
img.setDefaultImageResId(R.drawable.channel_thumb_default);

return convertView;
}

类缓存

/**
* Created by Douglas on 24/08/2014.
*/
public class VolleySingleton {

private static VolleySingleton mInstance = null;
// Fila de execução
private RequestQueue mRequestQueue;
// Image Loader
private ImageLoader mImageLoader;

private VolleySingleton(Context context) {
mRequestQueue = Volley.newRequestQueue(context);
mImageLoader = new ImageLoader(this.mRequestQueue, new ImageLoader.ImageCache() {
private final LruCache<String, Bitmap> mCache = new LruCache<String, Bitmap>(10);

public void putBitmap(String url, Bitmap bitmap) {
mCache.put(url, bitmap);
}

public Bitmap getBitmap(String url) {
return mCache.get(url);
}
});
}

public static VolleySingleton getInstance(
Context context) {

if (mInstance == null) {
mInstance = new VolleySingleton(context);
}
return mInstance;
}

public RequestQueue getRequestQueue() {
return this.mRequestQueue;
}

public ImageLoader getImageLoader() {
return this.mImageLoader;
}
}

我的列表图片

http://i.imgur.com/gsEkt9R.png

最佳答案

它工作正常。信箱效果(顶部和底部的黑条)是您正在获取的图像的一部分。

编辑:

要用原始图像创建一个没有黑条的位图,使用

Bitmap android.graphics.Bitmap.createBitmap(Bitmap source, int x, int y, int width, int height)

在哪里

来源 - 带有黑条的原始位图

x - 源中第一个像素的 x 坐标

y - 源中第一个像素的 y 坐标

width - 每行的像素数

高度 - 行数

关于android - Volley 无法正确调整图像大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25655882/

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