我正在尝试在一个java类中显示在方法中创建的位图图像,并在另一个java类的ImageView中显示它。这是我到目前为止的代码,但我得到一个空的ImageView。谁能告诉我为什么?
这是我的PictureLocation.java文件中的代码(这是我要在另一个活动中显示的位图图像的位置)
// THIS IS WHERE THE BITMAP FILE IS GENERATED WHEN TAKING A PHOTO
private void onCaptureImageResult(Intent data) {
Bitmap thumbnail = (Bitmap) data.getExtras().get("data");
ByteArrayOutputStream bytes = new ByteArrayOutputStream();
thumbnail.compress(Bitmap.CompressFormat.JPEG, 90, bytes);
// HERE I AM SETTING THE THUMBNAIL SO THAT I CAN GET IT LATER
setBitmap(thumbnail);
File destination = new File(Environment.getExternalStorageDirectory(),
System.currentTimeMillis() + ".jpg");
FileOutputStream fo;
try {
destination.createNewFile();
fo = new FileOutputStream(destination);
fo.write(bytes.toByteArray());
fo.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
// THIS IS THE ACTIVITY I NEED TO SHOW THE BITMAP IN
Intent intent = new Intent(this, ImageModification.class);
startActivity(intent);
}
public void setBitmap(Bitmap image){
this.myImage = image;
}
public Bitmap getBitmap(){
return this.myImage;
}
这是我的ImageModification.java文件的代码。这是我试图从PictureLocation.java文件中获取创建的位图文件并将其显示在ImageView中的位置。
public class ImageModification extends AppCompatActivity {
private ImageView sourceImage;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.image_modification_layout);
// ONCE THIS ACTIVITY IS STARTED I TRY TO DISPLAY THE BITMAP
// IN AN IMAGEVIEW
PictureLocation pictureLocation = new PictureLocation();
sourceImage = (ImageView) findViewById(R.id.sourceImage);
sourceImage.setImageBitmap(pictureLocation.getBitmap());
}
任何帮助都会很棒。谢谢!