【问题标题】:Take Picture, then edit saved picture problem!拍照,然后编辑保存的图片问题!
【发布时间】:2011-03-01 18:22:49
【问题描述】:

我对编程非常陌生,正在尝试使用车载摄像头硬件制作应用程序,我的目的是拍照;然后,当您单击保存时,该图片会出现在要编辑的新活动中...我已经寻找了几天关于如何最好地使用相机硬件...有人告诉我startActivity(new Intent( android.provider.MediaStore.ACTION_IMAGE_CAPTURE)); 随后将初始化相机最简单的......我已经让相机启动甚至保存图片,但我的问题在于;一旦我在相机上按下保存,相机活动就会重新加载,而不是将保存的图片踢到可以编辑的新活动中......我知道我可能听起来像一个完整的菜鸟,但如果有人理解这一点并且可以帮助我会非常感激。

【问题讨论】:

    标签: android android-camera


    【解决方案1】:

    亚当,

    在我的应用中,我使用以下代码启动相机:

    public void imageFromCamera() {
        Intent intent = new Intent("android.media.action.IMAGE_CAPTURE");
        mImageFile = new File(Environment.getExternalStorageDirectory()+File.separator+"MyApp",  
                "PIC"+System.currentTimeMillis()+".jpg");
        mSelectedImagePath = mImageFile.getAbsolutePath();
        intent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(mImageFile));
        startActivityForResult(intent, TAKE_PICTURE);
    }
    

    这会将图像保存到路径mSelectedImagePath,即/sdcard/MyApp/<systemtime>.jpg

    然后您在onActivityResult 中捕获IMAGE_CAPTURE 意图的返回并启动您的活动以从那里编辑图像!

    public void onActivityResult(int requestCode, int resultCode, Intent data) {
        super.onActivityResult(requestCode, resultCode, data);
        if (resultCode == RESULT_OK) {
            switch(requestCode) {
            case TAKE_PICTURE:
                        //Launch ImageEdit Activity
                Intent i = new Intent(this, ImageEdit.class);
                        i.putString("imgPath", "mSelectedImagePath");
                        startActivity(i);
                break;
            }
        }
    }
    

    希望这会有所帮助!

    【讨论】:

    • @willytate 我真的很感谢你的帮助,我想我只是不明白。当我输入这个编码时,我得到了导入无法解决的各种错误,当我认为我已经修复它时;我通过手机上的 USB 调试运行它,当我单击按钮开始活动时,我不断收到意外错误程序已停止,请重试。
    • 您可以编辑您的原始问题以添加您的代码吗?这样我也许能提供更好的帮助。
    • @willytate 我宁愿不这样做,只是因为害怕看起来像个白痴。这就是我试图用 leimens 术语做的事情。按下 mymenu.xml 文件上的一个按钮,然后将您发送到您拍照的相机,可以选择使用照片或重新拍摄....然后一旦您选择它
    • 如果您在您的按钮的onClickListener() 中调用imageFromCamera(),那么我发布的代码应该就是所有这些。我已经评论了您需要在哪里启动图像编辑Activity。不幸的是,如果您不发布代码或错误消息,我真的无能为力:-\。我不会因为害怕看起来像个白痴而不会发帖,我们曾经都是初学者。
    • 我遇到的问题是... onActivityResult(int, int, Intent) 方法未定义对象类型
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-01-15
    相关资源
    最近更新 更多