如果scaleType是centerCrop,则Glide RoundedCornersTransformation不做任何更改

时间:2017-11-21 06:59:20

标签: android android-glide

我正在使用Glide <form [formGroup]="logForm" (ngSubmit)="onSubmit(logForm.value)"> <div class="login-user-input"> <ion-item> <ion-label class="label" fixed>Email</ion-label> <ion-input type="text" formControlName="email" [(ngModel)]="user.Email" ></ion-input> </ion-item> <ion-item *ngIf="logForm.controls.email.hasError('pattern') && logForm.controls.email.touched"> <p>Please enter valid Email</p> </ion-item> <ion-item> <ion-label class="label" fixed>Password</ion-label> <ion-input type="password" formControlName="password" maxlength="8" [(ngModel)]="user.password"></ion-input> </ion-item> <ion-item *ngIf="logForm.controls.password.hasError('minLength') && logForm.controls.password.touched"> <p>Please enter valid Password</p> </ion-item> </div> <div> <button text-center class="customersubmitbtn" [disabled]="!logForm.valid" color="primary" >Login</button> </div> </form> wasabeef/glide-transformations在图像视图的左下角和右下角添加一个角半径。图像已加载但未应用转换,我看不到任何角落的变化。

这是我的Glide转型:

4.3.0

我的导入如下:

Glide.with(context)
    .load(message.imageUrl)
    .apply(bitmapTransform(new RoundedCornersTransformation(25, 0, RoundedCornersTransformation.CornerType.BOTTOM)))
    .into(aq.id(R.id.ivSingleImage).getImageView());

加载图像但不应用转换。这个实现是否正确?

我还尝试了import com.bumptech.glide.Glide; import jp.wasabeef.glide.transformations.RoundedCornersTransformation; import static com.bumptech.glide.request.RequestOptions.bitmapTransform; CornerType.BOTTOM_LEFT

修改

我注意到只有在scaleType设置为centerCrop时才会出现这种情况。如果我从XML中删除它,它可以工作,但在图像的左侧和右侧有两个大空格:

CornerType.BOTTOM_RIGHT

参考更新^,我如何获得图像centerCrop并仍然有一个圆角变换?

1 个答案:

答案 0 :(得分:4)

找到解决方案。解决方案使用我在问题中提到的滑动转换库中的MultiTransformationCenterCrop转换。

下面有&#39;解决方案:

MultiTransformation multiLeft = new MultiTransformation(
     new CenterCrop(),
     new RoundedCornersTransformation(25, 0, RoundedCornersTransformation.CornerType.BOTTOM_LEFT));

Glide.with(context)
     .load(message.imageUrl)
     .apply(bitmapTransform(multiLeft))
     .into(aq.id(R.id.ivSingleImage).getImageView());

在XML的centerCrop属性中使用scaleType不适用于Glide库转换。