美文网首页
aandroid让图片 内的bitmap不会被拉伸又让image

aandroid让图片 内的bitmap不会被拉伸又让image

作者: 吉凶以情迁 | 来源:发表于2023-06-04 16:27 被阅读0次

方法1 水平或者垂直 使用wrap_content
然后使用 android:scaleType="fitCenter"让其完整显示

image.png

保持正方形

     getBinding().ivPrintInfo.getViewTreeObserver().addOnPreDrawListener(new ViewTreeObserver.OnPreDrawListener() {
            @Override
            public boolean onPreDraw() {
                int height = getBinding().ivPrintInfo.getHeight(); // 保持比例
                ViewGroup.LayoutParams params = getBinding().ivPrintInfo.getLayoutParams();
                params.width = height;
                getBinding().ivPrintInfo.setLayoutParams(params);
                // 移除监听器,避免重复触发
                getBinding().ivPrintInfo.getViewTreeObserver().removeOnPreDrawListener(this);
                return true;
            }
        });

刚好铺满屏幕的方法

  binding.ivPreviewContainer.setVisibility(View.VISIBLE);
                    PrintLabelModel printLabelModel = list.get(0);
                    binding.ivZoom.setLayoutParams(new FrameLayout.LayoutParams(printLabelModel.imgWidth, printLabelModel.imgHeight, Gravity.CENTER));
                    int widthPixels = SuperContext.getInstance().getResources().getDisplayMetrics().widthPixels;
                    int scale = widthPixels / printLabelModel.imgWidth;
                    binding.ivZoom.setImageDrawable(binding.ivPrintInfo.getDrawable());
                    binding.ivZoom.setScaleX(scale);
                    binding.ivZoom.setScaleY(scale);

相关文章

网友评论

      本文标题:aandroid让图片 内的bitmap不会被拉伸又让image

      本文链接:https://www.haomeiwen.com/subject/dkhcrdtx.html