如何从一个意图传递摄像机图像其他意图在android系统? [英] How to Pass camera image from one intent to other intent in android?
问题描述
我试图从一个意图发送摄像机图像到另一个意图显示。目前我使用下面的方法尝试,
I am trying to send camera image from one intent to another intent to display. Currently i am trying using the following method,
一旦图像捕获
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
switch(requestCode)
{
case CAMERA_RECEIPTREQUEST:
if(resultCode== Activity.RESULT_OK)
{
BitmapFactory.Options options = new BitmapFactory.Options();
options.inSampleSize = 8;
//ImageView jpgView = (ImageView)findViewById(R.id.imageView1);
Bitmap receipt = BitmapFactory.decodeFile(photo.toString(),options);
Intent imagepass = new Intent(Activity1.this,Activity2.class);
imagepass.putExtra("imagepass", imagepass);
startActivity(imagepass);
在第二个活动
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.receiptreview);
//creating view ids
createViewIds();
Bitmap receiptimage = (Bitmap) getIntent().getExtras().getParcelable("imagepass");
receipt.setImageBitmap(receiptimage);
}
但它显示的StackOverflow错误,
But it shows StackOverFlow error,
at java.util.HashMap$EntrySet.iterator(HashMap.java:944)
at android.os.Parcel.writeMapInternal(Parcel.java:486)
at android.os.Bundle.writeToParcel(Bundle.java:1552)
at android.os.Parcel.writeBundle(Parcel.java:502)
at android.content.Intent.writeToParcel(Intent.java:5477)
我不知道我是否想错了method.I正在寻找一些样品或解决这个。
I am not sure whether i am trying wrong method.I am looking for some sample or solution to this.
感谢您的帮助球员。
推荐答案
使用
Bitmap receipt = BitmapFactory.decodeFile(photo.toString(),options);
Intent imagepass = new Intent(Activity1.this,Activity2.class);
imagepass.putExtra("imagepass", receipt );
startActivity(imagepass);
而不是
Bitmap receipt = BitmapFactory.decodeFile(photo.toString(),options);
Intent imagepass = new Intent(Activity1.this,Activity2.class);
imagepass.putExtra("imagepass", imagepass);
startActivity(imagepass);
您逝去的意图实例imagepass在 imagepass.putExtra(imagepass,imagepass);
所以通过位图
比如在 imagepass.putExtra(imagepass,收据);
You are passing Intent instance imagepass in imagepass.putExtra("imagepass", imagepass);
so pass Bitmap
instance in imagepass.putExtra("imagepass", receipt );
编辑:
有关活动之间传递图像(位图)Android中看到这些帖子:
for passing images (bitmaps) between activities in android see these posts:
<一个href=\"http://stackoverflow.com/questions/4352172/how-do-you-pass-images-bitmaps-between-android-activities-using-bundles\">how你使用Android的捆绑活动之间传递图像(位图)?
<一个href=\"http://stackoverflow.com/questions/2459524/how-can-i-pass-a-bitmap-object-from-one-activity-to-another\">How我可以通过一个位图对象从一个活动到另一个
这篇关于如何从一个意图传递摄像机图像其他意图在android系统?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!