将捕获的图片移动到下一个activity
Moving the picture captured to the next activity
正在尝试将用户拍摄的图片放在第二个 activity。每次我捕获图片时都会将我带到 nextActivity 但现在面临的问题是如何将捕获的图像放入下一个 activity 以便用户可以看到它
请任何人指导我或指导我应该怎么做?
这是我的代码
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == CAM_REQUEST) {
if (resultCode == RESULT_OK) {
Bitmap thumbnail = (Bitmap) data.getExtras().get("data");
Intent i = new Intent(this, PostActivity.class);
i.putExtra("name", thumbnail);
startActivity(i);
}
}
}
将图像路径添加到 intent extras 并在第二个中获取它 activity。
在活动之间使用 Intent Extras 发送图像 URI。
Intent i = new Intent(this, SecondActivity.class);
i.putExtra("uri",uri);
startActivity(i);
您可以使用以下代码通过 Intent 发送数据
Intent intent=new Intent(CurrentActivity.this,SecondActivity.class);
intent.putExtra("imagepath",path);
startActivity(intent);
用于接收通过 SecondActivity 中的 Intent 发送的数据的代码
Bundle b=getIntent().getExtras();
String path=b.getString("imagepath");
当您在 onActivityResult
方法上收到 Bitmap
时。所以您可以尝试使用以下代码将图像传递给 NextActivity
.
1) 将Bitmap
转换为字节数组
Bitmap mBitmap = (Bitmap) data.getExtras().get("data");
ByteArrayOutputStream stream = new ByteArrayOutputStream();
mBitmap.compress(Bitmap.CompressFormat.PNG, 100, stream);
byte[] byteArray = stream.toByteArray();
// Pass it to intent to send in NextActitivy
Intent intent = new Intent(this, NextActivity.class);
intent.putExtra("captured_image", byteArray);
startActivity(intent);
2) 从 NextActivity
上的 onCreate()
方法
上的包中获取字节
Bundle mBundle = getIntent().getExtras();
byte[] mBytes = mBundle.getByteArray("captured_image");
Bitmap mBitmap = BitmapFactory.decodeByteArray(mBytes, 0, mBytes.length);
ImageView mImageView = (ImageView) findViewById(R.id.imageView1);
mImageView.setImageBitmap(mBitmap);
正在尝试将用户拍摄的图片放在第二个 activity。每次我捕获图片时都会将我带到 nextActivity 但现在面临的问题是如何将捕获的图像放入下一个 activity 以便用户可以看到它
请任何人指导我或指导我应该怎么做?
这是我的代码
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == CAM_REQUEST) {
if (resultCode == RESULT_OK) {
Bitmap thumbnail = (Bitmap) data.getExtras().get("data");
Intent i = new Intent(this, PostActivity.class);
i.putExtra("name", thumbnail);
startActivity(i);
}
}
}
将图像路径添加到 intent extras 并在第二个中获取它 activity。
在活动之间使用 Intent Extras 发送图像 URI。
Intent i = new Intent(this, SecondActivity.class);
i.putExtra("uri",uri);
startActivity(i);
您可以使用以下代码通过 Intent 发送数据
Intent intent=new Intent(CurrentActivity.this,SecondActivity.class);
intent.putExtra("imagepath",path);
startActivity(intent);
用于接收通过 SecondActivity 中的 Intent 发送的数据的代码
Bundle b=getIntent().getExtras();
String path=b.getString("imagepath");
当您在 onActivityResult
方法上收到 Bitmap
时。所以您可以尝试使用以下代码将图像传递给 NextActivity
.
1) 将Bitmap
转换为字节数组
Bitmap mBitmap = (Bitmap) data.getExtras().get("data");
ByteArrayOutputStream stream = new ByteArrayOutputStream();
mBitmap.compress(Bitmap.CompressFormat.PNG, 100, stream);
byte[] byteArray = stream.toByteArray();
// Pass it to intent to send in NextActitivy
Intent intent = new Intent(this, NextActivity.class);
intent.putExtra("captured_image", byteArray);
startActivity(intent);
2) 从 NextActivity
上的 onCreate()
方法
Bundle mBundle = getIntent().getExtras();
byte[] mBytes = mBundle.getByteArray("captured_image");
Bitmap mBitmap = BitmapFactory.decodeByteArray(mBytes, 0, mBytes.length);
ImageView mImageView = (ImageView) findViewById(R.id.imageView1);
mImageView.setImageBitmap(mBitmap);