我在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;
}
}
我的清单图片
答案 0 :(得分:1)
工作正常。信箱效果(顶部和底部的黑条)是您正在获取的图像的一部分。
编辑:
使用原始图像创建位图但没有黑条,请使用
Bitmap android.graphics.Bitmap.createBitmap(Bitmap source, int x, int y, int width, int height)
,其中
source - 带黑条的原始位图
x - 源
中第一个像素的x坐标y - 源
中第一个像素的y坐标width - 每行中的像素数
height - 行数