Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/341.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 捕获图像并将其传输到其他活动_Java_Android - Fatal编程技术网

Java 捕获图像并将其传输到其他活动

Java 捕获图像并将其传输到其他活动,java,android,Java,Android,我需要帮助。 我有一个像Meme Generator这样的项目,我有两个活动。 Activity_main(用户界面)有一个按钮可触发“选择摄像头选项” 和Creatememe(作为第二个活动,显示从活动_main捕获的图像) 现在我的问题是,当我使用Android版本4.0.4来降低版本时,图像正在通过第二个活动。 当使用高于4.0.4的Android版本时,图像没有传递到第二个Activity,图像仅显示Activity_main内部。 preview.setImageBitmap(位图)/

我需要帮助。 我有一个像Meme Generator这样的项目,我有两个活动。 Activity_main(用户界面)有一个按钮可触发“选择摄像头选项” 和Creatememe(作为第二个活动,显示从活动_main捕获的图像)

现在我的问题是,当我使用Android版本4.0.4来降低版本时,图像正在通过第二个活动。 当使用高于4.0.4的Android版本时,图像没有传递到第二个Activity,图像仅显示Activity_main内部。 preview.setImageBitmap(位图)/在“选择相机选项”的OnClickListener上使用下一种方法

static final int REQUEST_IMAGE_CAPTURE = 1;

private void dispatchTakePictureIntent() {
    Intent takePictureIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
    if (takePictureIntent.resolveActivity(getPackageManager()) != null) {
        startActivityForResult(takePictureIntent, REQUEST_IMAGE_CAPTURE);
    }
}
然后,重写activityresult上的
,并按如下方式处理结果

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    if (requestCode == REQUEST_IMAGE_CAPTURE && resultCode == RESULT_OK) {
        Bundle extras = data.getExtras();
        Intent intent = new Intent(MainActivity.this,CreateMeme.class);
        intent.putExtras(extras);
        startActivity(intent);
    }
}
在您的CreateMeme.class上处理这样的附加项-

imageView = (ImageView) findViewById(R.id.imageView2);
Intent intent = getIntent();
Bundle extras = intent.getExtras();
Bitmap imageBitmap = (Bitmap) extras.get("data");
imageView.setImageBitmap(bitmap);

有关更多信息,请参阅此

我在这行intent.putExtra(extras)中出错;它表示无法解析方法put.Extra(extras),因此我尝试将文本添加为资源intent.putExtra(“数据”,extras);仍然无法工作,即使在MainActivity.do intent.putExtras中也无法显示捕获的图像,带有S,我的错误..我建议您在继续之前多阅读一些基础知识。。
static final int REQUEST_IMAGE_CAPTURE = 1;

private void dispatchTakePictureIntent() {
    Intent takePictureIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
    if (takePictureIntent.resolveActivity(getPackageManager()) != null) {
        startActivityForResult(takePictureIntent, REQUEST_IMAGE_CAPTURE);
    }
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    if (requestCode == REQUEST_IMAGE_CAPTURE && resultCode == RESULT_OK) {
        Bundle extras = data.getExtras();
        Intent intent = new Intent(MainActivity.this,CreateMeme.class);
        intent.putExtras(extras);
        startActivity(intent);
    }
}
imageView = (ImageView) findViewById(R.id.imageView2);
Intent intent = getIntent();
Bundle extras = intent.getExtras();
Bitmap imageBitmap = (Bitmap) extras.get("data");
imageView.setImageBitmap(bitmap);