我的图像已经有大约2个黑色边框。让我们说图像是60x60,边框被烘焙。我没有这个2磅的黑色边框,我想要一个1磅的灰色边框,但我想通过代码执行此操作,而不是获得新的资产。
我正在考虑编程移除黑色边框,使图像为58x58,然后通过代码添加灰色的1像素笔划。
我该怎么做?
答案 0 :(得分:1)
您可以从边框裁剪2px的图像。你可以从tutorial获得帮助。然后使用以下代码将边框添加到imageview:
imageView.layer.borderWidth = 1.0f;
imageView.borderColor: [[UIColor blackColor] CGColor];
imageView.layer.setMasksToBounds = YES;
请注意添加标题:
#import <QuartzCore/QuartzCore.h>
答案 1 :(得分:1)
试试这个......
#import <<QuartzCore/QuartzCore.h>>
imageviewObj.layer.borderColor = [UIColor whiteColor].CGColor;
imageviewObj.layer.borderWidth = 2.0;
imageviewObj.layer.cornerRedius = 10.0;
[imageviewObj setClipsToBound:YES] // this is to restrict your image inside your imageview
答案 2 :(得分:0)
首先将UIImageView的大小更改为58x58,然后将ImageView的contentMode属性更改为UIViewContentModeCenter。然后在下面添加以下代码;
YourImageView.clipsToBounds = YES;
YourImageView.layer.borderWidth = 1.0;
YourImageView.layer.borderColor = [[UIColor grayColor] CGColor];
不要忘记添加QuartzCore / QuartzCore.h库。
我没试过,但希望这有帮助。
答案 3 :(得分:0)
用户关注方法:Set border around UIImageView
#import <QuartzCore/QuartzCore.h>
#define kBoarderWidth 3.0
#define kCornerRadius 8.0
CALayer *borderLayer = [CALayer layer];
CGRect borderFrame = CGRectMake(0, 0, (imageView.frame.size.width), (imageView.frame.size.height));
[borderLayer setBackgroundColor:[[UIColor clearColor] CGColor]];
[borderLayer setFrame:borderFrame];
[borderLayer setCornerRadius:kCornerRadius];
[borderLayer setBorderWidth:kBorderWidth];
[borderLayer setBorderColor:[[UIColor redColor] CGColor]];
[imageView.layer addSublayer:borderLayer];