/**
 * 拍照界面
 * 接收文件重写:public void actResultCamera(File file) {}
 */
public void showCameraChooser() throws Exception {
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
intent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(new File(fileUtil.getRoot() + "/temp.jpg")));
startActivityForResult(intent, ACT_RESULT_CAMERA);
}
public void actResultCamera(File file) {}

解决方案 »

  1.   

    我理解的你的问题是这样的:调用照相机就是调用系统或者自己安装的照相机,照相之后得到所拍摄的图片进行后续的操作。事件触发,通过意图来调用相机:Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
    intent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(new File(这里是照相之后保存的路径,将来要取照片从这里取。具体的方式就不说了,采用流));
            startActivityForResult(intent, 1); //这个意图执行后,会让你选择用那个照相机拍摄(如果你装了其他的相机类app,这个是系统自己实现的,不需要人为的干涉)
    需要注意的是,要赋予用户权限。在AndroidManifest.xml中写入    <uses-permission android:name="android.permission.CAMERA"/>//调用照相机的权限
        <uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/> 
        <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>//读写卡的权限
    附:得到sd卡目录:
     if(Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED))//已经插入了sd卡,没插入的情况你自己会写
    {File file = Environment.getExternalStorageDirectory();}//这个就是sd卡的根目录了,剩下的自己完成
      

  2.   

    我想用surface 但是怎么弄也弄不出来
    我不太想直接打开照相机的方式
      

  3.   

    http://my.eoe.cn/761385/archive/4226.html