我正在使用Android中的图像视图来处理从API 12到22的设备。我们知道,有两种调用setBackground
的方法不同,无论我们使用的是API 16+还是较低的API。
我这样做是因为大多数教程和其他Stack Overflow问题都有引导,但我仍然在图像视图中获得黑色而不是图像。我还应该做些什么才能让它发挥作用?
Bitmap bitmap;
int sdk = android.os.Build.VERSION.SDK_INT;
bitmap = BitmapDecoder.decodeBitmapFromResource(context.getResources(),
R.drawable.sample_photo, 200, 500);
if(sdk < android.os.Build.VERSION_CODES.JELLY_BEAN) {
setBackgroundV16Minus(holder.locationImage, bitmap);
} else {
setBackgroundV16Plus(holder.locationImage,bitmap);
}
更新
@TargetApi(Build.VERSION_CODES.JELLY_BEAN)
private void setBackgroundV16Plus(View view, Bitmap bitmap) {
view.setBackground(new BitmapDrawable(context.getResources(),bitmap));
}
@SuppressWarnings("deprecation")
private void setBackgroundV16Minus(View view, Bitmap bitmap) {
view.setBackgroundDrawable(new BitmapDrawable(bitmap));
}
答案 0 :(得分:1)
类似的 if (android.os.Build.VERSION.SDK_INT >= 16)
.setBackground(...);
else
.setBackgroundDrawable(...);
方法现已在Android SDK API级别16
试试这个逻辑
<?php userphoto_the_author_thumbnail() ?>