我正在尝试动态添加缩略图到我的相对布局。这是代码
public void showViewOfReceipt(String fileName)
{
byte[] imageData = null;
try
{
final int THUMBNAIL_SIZE = 64;
FileInputStream fis = new FileInputStream(fileName);
Bitmap imageBitmap = BitmapFactory.decodeStream(fis);
Float width = new Float(imageBitmap.getWidth());
Float height = new Float(imageBitmap.getHeight());
Float ratio = width/height;
imageBitmap = Bitmap.createScaledBitmap(imageBitmap, (int)(THUMBNAIL_SIZE * ratio), THUMBNAIL_SIZE, false);
ByteArrayOutputStream baos = new ByteArrayOutputStream();
imageBitmap.compress(Bitmap.CompressFormat.JPEG, 100, baos);
imageData = baos.toByteArray();
ImageView image = new ImageView(this);
image.setImageBitmap(imageBitmap);
RelativeLayout layout = (RelativeLayout) findViewById(R.id.expLayout5);
layout.addView(image);
}
catch(Exception ex) {
}
}
它从不显示任何内容
此致
答案 0 :(得分:1)
更改以下代码行
catch(Exception ex)
{
}
要,
catch(Exception ex)
{
e.printStack();
}
因此,如果有的话,你会收到错误。
答案 1 :(得分:1)
1-将您的相对布局更改为线性布局 2-使用下面的代码获取位图图像
Uri photoUri = data.getData();
String[] filePathColumn = {MediaStore.Images.Media.DATA};
Cursor cursor = getContentResolver().query(photoUri, filePathColumn, null, null, null);
if (cursor.moveToFirst())
{
int columnIndex = cursor.getColumnIndex(filePathColumn[0]);
String filePath = cursor.getString(columnIndex);
cursor.close();
Bitmap imageReturned = BitmapFactory.decodeFile(filePath);
showImageInLayout(imageReturned);
然后定义一个函数showImageInLayout(Bitmap imageReturned)
public void showViewOfReceiptInLayout(Bitmap imageBitmap)
{
byte[] imageData = null;
imageBitmap = Bitmap.createScaledBitmap(imageBitmap, yourWidth, yourHeight, false);
ByteArrayOutputStream baos = new ByteArrayOutputStream();
imageBitmap.compress(Bitmap.CompressFormat.JPEG, 100, baos);
imageData = baos.toByteArray();
ImageView image = new ImageView(this);
image.setImageBitmap(imageBitmap);
layout.addView(image);
}
答案 2 :(得分:0)
评论代码行:
// image =(ImageView)findViewById(R.id.imageView1);
答案 3 :(得分:0)
请使用错误或异常日志代码更新问题,以便我们为您提供帮助。
根据Altaaf在fileName中回答错误。所以请检查它或给代码传递它。
感谢。