我正在尝试创建类似WhatsApp使用的自定义相机预览。为了说明这个问题,我在下面添加了一个图片:
我正在使用以下代码打开相机活动:
imgCamera.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
File file = new File(path);
Uri outputFileUri = Uri.fromFile(file);
Intent intent = new Intent(
android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
intent.putExtra(MediaStore.EXTRA_OUTPUT, outputFileUri);
startActivityForResult(intent, 2);
}
});
尝试以下内容显示预览:
public void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == 2 && resultCode == Activity.RESULT_OK) {
Intent startPreview = new Intent(this.getContext(), PreviewActivity.class);
startPreview.putExtra("path", path);
startActivity(startPreview);
}
super.onActivityResult(requestCode, resultCode, data);
}
但是,它没有显示我的预览自定义活动。它显示了常见的一个。
有人可以帮助我吗?
谢谢
答案 0 :(得分:1)
它不会显示您的活动,因为您指定的目标是ACTION_IMAGE_CAPTURE,其中声明:
标准意图动作,可以发送给相机应用程序捕获图像并将其返回。
如果您有自定义活动来处理相机捕获/预览/等。你需要调用新的Intent(Context,YourActivity.class)