关于布局问题与图片剪裁问题



1.布局问题。

为了适配华为手机的虚拟键盘,切记,当虚拟键盘上顶时,整个的布局都会被顶上去,这个时候注意显示文字的视图位置,如果显示文字的的视图与其顶部的距离设置的有问题,便会导致部分文字显示不清。


2.图片剪裁问题。

关于打开相机相册,这里就不提了,有许多链接都是相同的,但是在剪裁图片的时候我遇到了一个问题。

之前我使用的是方法一:

private static void startPhotoZoom(Activity activity, Uri uri) {
    Intent intent = new Intent("com.android.camera.action.CROP");
    intent.setDataAndType(uri, "image/*");
    // crop为true是设置在开启的intent中设置显示的view可以剪裁
    intent.putExtra("crop", "true");
    //aspectX aspectY 是宽高的比例
    intent.putExtra("aspectX", 300);
    intent.putExtra("aspectY", 400);
    //outputX,outputY 是剪裁图片的宽高
    intent.putExtra("outputX", 300);
    intent.putExtra("outputY", 400);
    intent.putExtra("return-data", true);
    activity.startActivityForResult(intent, PHOTO_REQUEST_CUT);
}
但是在遇到小米新系统后会有问题。


之后我改成了方法二:

 private static void startPhotoZoom(Activity activity, Uri uri) {
        Intent intent = new Intent("com.android.camera.action.CROP");
        L.e("startPhotoZoom uri = " + uri);
 /*       L.e("url=" + uri.getPath());

//        intent.addFlags(Intent.Flagr)
        intent.setDataAndType(uri, "image/*");
        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
            intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION); //添加这一句表示对目标应用临时授权该Uri所代表的文件
            intent.addFlags(Intent.FLAG_GRANT_WRITE_URI_PERMISSION);
        }
        // 下面这个crop=true是设置在开启的Intent中设置显示的VIEW可裁剪

        intent.putExtra("scale", true);
        L.e("uri = " + uri);
        // crop为true是设置在开启的intent中设置显示的view可以剪裁
        intent.putExtra("crop", "true");
        //aspectX aspectY 是宽高的比例
        intent.putExtra("aspectX", 300);
        intent.putExtra("aspectY", 400);
        //outputX,outputY 是剪裁图片的宽高
        intent.putExtra("outputX", 300);
        intent.putExtra("outputY", 400);
//        intent.putExtra("return-data", true);
       //网上有其他版本会出问题奔溃报错,加上这句保平安- - 
        intent.putExtra("noFaceDetection", true);
     
 	//输出文件存放的临时位置
intent.putExtra(MediaStore.EXTRA_OUTPUT, fileUri); intent.putExtra("outputFormat", Bitmap.CompressFormat.JPEG.toString()); activity.startActivityForResult(intent, PHOTO_REQUEST_CUT); }
完美避开所有问题,并解决。

该处主要在意的为相机剪裁会遇到问题。







  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值