AndroidResultContracts.TakePicture() 返回的是布尔值而不是位图。
创始人
2024-10-09 18:31:34
0

AndroidResultContracts.TakePicture() 返回的确实是一个布尔值,表示是否成功拍摄照片。如果要获取拍摄的位图,可以使用ActivityResultCallback回调来处理拍摄结果。下面是一个示例解决方法:

// 导入所需的类
import androidx.activity.result.ActivityResultLauncher;
import androidx.activity.result.contract.ActivityResultContracts;
import androidx.appcompat.app.AppCompatActivity;

import android.content.Intent;
import android.graphics.Bitmap;
import android.os.Bundle;
import android.provider.MediaStore;
import android.widget.ImageView;

public class MainActivity extends AppCompatActivity {

    private ImageView imageView;
    private ActivityResultLauncher takePictureLauncher;

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

        // 初始化 ImageView
        imageView = findViewById(R.id.imageView);

        // 创建启动相机的 ActivityResultLauncher
        takePictureLauncher = registerForActivityResult(new ActivityResultContracts.StartActivityForResult(), result -> {
            if (result.getResultCode() == RESULT_OK) {
                // 获取拍摄的照片位图
                Bundle extras = result.getData().getExtras();
                Bitmap bitmap = (Bitmap) extras.get("data");

                // 在 ImageView 中显示位图
                imageView.setImageBitmap(bitmap);
            }
        });

        // 启动相机拍照
        Intent takePictureIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
        takePictureLauncher.launch(takePictureIntent);
    }
}

上述代码中,我们通过ActivityResultContracts.StartActivityForResult()创建了一个ActivityResultLauncher来启动相机应用,并在回调中处理拍摄结果。在回调中,我们从返回的Intent中获取照片位图,并将其显示在ImageView中。

请注意,此示例仅处理了成功拍摄照片的情况。如果用户取消了拍摄或发生其他错误,可以在回调中添加相应的处理逻辑。

相关内容

热门资讯

我来向大家传授!卡五星辅助器,... 我来向大家传授!卡五星辅助器,wepoker透视脚本免费app,必胜教程(有挂详细);1、点击下载安...
重大科普!途游四川辅助器是真的... 重大科普!途游四川辅助器是真的吗,wepoker有没有挂,安装教程(证实有挂);亲,有的,ai轻松简...
详细说明!新道游房间,aapo... 详细说明!新道游房间,aapoker脚本怎么用,专业教程(详细教程);1、首先打开新道游房间最新版本...
必备科技!福建老友破解,wpk... 必备科技!福建老友破解,wpk免费辅助,教你攻略(有挂分享);福建老友破解是一项福建老友破解软件透明...
2分钟细说!泉州相约十三水辅助... 2分钟细说!泉州相约十三水辅助,aa poker透视软件,技巧教程(今日头条);1、点击下载安装,泉...
玩家必看秘籍!极速摇一摇鱼虾蟹... 《玩家必看秘籍!极速摇一摇鱼虾蟹辅助,wepoker插件辅助,我来教教你(有挂透明挂)》 极速摇一摇...
如何分辨真伪!菠萝辅助破解版,... 如何分辨真伪!菠萝辅助破解版,wepoker买钻石有用吗,2025新版总结(有挂规律);相信小伙伴都...
大家学习交流!小程序蜀山西川血... 大家学习交流!小程序蜀山西川血战辅助,we-poker辅助器,透明挂教程(有挂猫腻);大家学习交流!...
我来教大家!互游辅助,hhpo... 您好,互游辅助这款游戏可以开挂的,确实是有挂的,需要了解加微【136704302】很多玩家在这款游戏...
我来分享!微信多乐辅助,购买w... 我来分享!微信多乐辅助,购买wepoker模拟器,揭秘教程(有挂存在);人气非常高,ai更新快且高清...