您的账号已失效 2021-05-09 21:39 采纳率: 33.3%
浏览 33
已结题

Andriod 调用相册返回时遇到的错误(andriod 新手)

 

软件概述:  做的一个类似与微信的界面MainActivity是登陆界面,用的是显示意图跳转到注册界面里面的一个按钮可以打开相册。

问题: 当我点击到图片后,返回的不是我的注册界面,直接跳到主界面去了。

这是主界面    注册界面

 

点击并获取相册权限的代码(但是我发现只打开相册好像不要这个权限)

     imb.setOnClickListener(new View.OnClickListener() {
            @RequiresApi(api = Build.VERSION_CODES.M)
            @Override
            public void onClick(View v) {
                //        checkSelfPermission 检测有没有 权限
//        PackageManager.PERMISSION_GRANTED 有权限
//        PackageManager.PERMISSION_DENIED  拒绝权限

                if (checkSelfPermission(Manifest.permission.CAMERA) != PackageManager.PERMISSION_GRANTED) {
                    final AlertDialog dialog;
                    AlertDialog.Builder builder=new AlertDialog.Builder(myregist.this);
                    builder.setMessage("是否允许开启相册权限")

                            .setPositiveButton("确定", new DialogInterface.OnClickListener() {
                                @Override
                                public void onClick(DialogInterface dialog, int which) {
                              //  requestPermissions(new String[]{Manifest.permission.CAMERA},MY_PERMISSION_REQUEST_CODE);

                                    ActivityCompat.requestPermissions(myregist.this,
                                            new String[]{Manifest.permission.CAMERA},
                                            MY_PERMISSION_REQUEST_CODE);

                                        dialog.dismiss();
                                }
                            })
                            .setNegativeButton("取消", new DialogInterface.OnClickListener() {
                                @Override
                                public void onClick(DialogInterface dialog, int which) {
                                    Toast.makeText(myregist.this,"取消后你不能使用相\n如需使用请自己到设置里面修改",Toast.LENGTH_LONG).show();
                                    dialog.dismiss();

                                }
                            }).create().show();


                }

            }
        });
    }

 

然后是获取权限之后的操作

  @Override
    public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) {
        super.onRequestPermissionsResult(requestCode, permissions, grantResults);

        if(requestCode==MY_PERMISSION_REQUEST_CODE){

            DoCamera();
        }
        else{

            DoTisi();
        }


    }

    public void  DoCamera(){
        Intent intentFromGallery = new Intent();
        // 设置文件类型
        intentFromGallery.setType("image/*");
        intentFromGallery.setAction(Intent.ACTION_PICK);
        startActivityForResult(intentFromGallery, CODE_REQUEST);

    }

最后就是点击图片之后的回传

    @Override
    protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
        super.onActivityResult(requestCode, resultCode, data);
        if (requestCode==CODE_REQUEST&&resultCode==RESULT_OK &&data!=null) {
            Bundle bundle=data.getExtras();
            Bitmap bitmap=(Bitmap) bundle.get("data");
            imb.setImageBitmap(bitmap);

        }


    }

感觉可能是回传这里有问题,最近弄了好久有好心人看看吗

  • 写回答

1条回答 默认 最新

  • 简单吗 2021-05-10 08:25
    关注

    读了好几遍也没明白你要表达的问题,是跳转的不对,还是程序出错有错误。。。。要是跳转界面不对 你贴下跳转的代码吧

    评论

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 9月29日

悬赏问题

  • ¥100 为什么这个恒流源电路不能恒流?
  • ¥15 有偿求跨组件数据流路径图
  • ¥15 写一个方法checkPerson,入参实体类Person,出参布尔值
  • ¥15 我想咨询一下路面纹理三维点云数据处理的一些问题,上传的坐标文件里是怎么对无序点进行编号的,以及xy坐标在处理的时候是进行整体模型分片处理的吗
  • ¥15 CSAPPattacklab
  • ¥15 一直显示正在等待HID—ISP
  • ¥15 Python turtle 画图
  • ¥15 stm32开发clion时遇到的编译问题
  • ¥15 lna设计 源简并电感型共源放大器
  • ¥15 如何用Labview在myRIO上做LCD显示?(语言-开发语言)