引用this answer,我试图让UIImageView显示一个圆形图像。我生成了一个蒙版,并尝试使用该图像来掩盖它,但这也没有用。
当我试图掩盖图像或改变角落时,没有任何反应。
这就是:
[proPic.layer setCornerRadius:proPic.frame.size.width/2];
当我致电[proPic.layer setMasksToBounds:YES];
时,图像完全消失。当我尝试使用third party library来掩盖图像时也是如此。
有什么建议吗?
编辑:
//Profile Picture
proPic = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"DummyProPic"]];
//Mask Profile Picture to be circular
[proPic.layer setCornerRadius:proPic.frame.size.width/2];
//With this line added, the picture disappears
//Without this line, nothing is done to mask the image
[proPic.layer setMasksToBounds:YES];
[self.contentView addSubview:proPic];
[proPic mas_makeConstraints:^(MASConstraintMaker *make) {
make.top.equalTo(self.contentView.mas_top).with.offset(padding.top);
make.centerX.equalTo(self.contentView.mas_centerX);
make.height.equalTo(@120);
make.width.equalTo(@120);
}];
答案 0 :(得分:0)
您应该删除.layer以屏蔽边界。尝试:
[proPic setMasksToBounds:YES];
答案 1 :(得分:0)
[proPic.layer setCornerRadius:60];
[proPic.layer setMasksToBounds:YES];
这很有效,它不像proPic.frame.size.width/2
部分。
答案 2 :(得分:0)
如果setMasksToBounds
出现问题,请删除屏蔽,然后尝试使用以下
proPic.clipsToBounds=YES;
它可能对你有所帮助。