以下是一个简单的Android调用相机的程序:

  1. 创建一个新的Android项目,并在布局文件中添加一个按钮。在MainActivity类中,为按钮添加一个点击事件:
public class MainActivity extends AppCompatActivity {
    Button btnTakePicture;
    static final int REQUEST_IMAGE_CAPTURE = 1;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        btnTakePicture = findViewById(R.id.btnTakePicture);
        btnTakePicture.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                dispatchTakePictureIntent();
            }
        });
    }

    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();
            Bitmap imageBitmap = (Bitmap) extras.get("data");
            ImageView imageView = findViewById(R.id.imageView);
            imageView.setImageBitmap(imageBitmap);
        }
    }
}
  1. 在dispatchTakePictureIntent()方法中,创建一个新的Intent,并设置其Action为MediaStore.ACTION_IMAGE_CAPTURE。这告诉Android系统我们要打开相机应用程序。

  2. 调用resolveActivity()方法来检查是否有应用程序可以处理我们的Intent。如果有,我们就使用startActivityForResult()方法来启动相机应用程序。

  3. 在onActivityResult()方法中,检查requestCode是否与我们启动相机时使用的requestCode相同,并检查resultCode是否为RESULT_OK。如果是,我们就获取相机应用程序返回的数据,并将它设置为ImageView的图像。

  4. 这个简单的程序就完成了。当用户点击按钮时,它将启动相机应用程序,并在拍摄照片后将其显示在ImageView中。

写个Android 调用相机的程序

原文地址: https://www.cveoy.top/t/topic/bJEY 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录