我在iOS中有一个视图,我希望有一个白色矩形背景(带有弯角),类似于下图中的那个。任何人都可以帮助我如何在iOS中实现这一目标
答案 0 :(得分:1)
您需要将控制器的视图设置为蓝色背景。然后,您将添加一个新的子视图,其具有所需的角半径的白色背景:
[self.view setBackgroundColor:[UIColor blueColor]];
UIView *roundedBox = [[UIView alloc] initWithFrame:CGRectMake(20, 60, 280, 280)];
[roundedBox setBackgroundColor:[UIColor whiteColor]];
[roundedBox.layer setCornerRadius:10];
[self.view addSubview:roundedBox];
您需要确保导入QuartzCore,因为需要直接操作图层,这就是设置角半径的方法:
#import <QuartzCore/QuartzCore.h>
答案 1 :(得分:0)
view.backgroundColor = [UIColor whiteColor];
view.layer.cornerRadius = 10;
view.layer.maskToBounds = YES;
答案 2 :(得分:0)
更难但更强大的方法是bezierPathWithRoundedRect:cornerRadius。您将不得不创建一个新的UIView。我个人会将UIView子类化,在你创建它之后,添加类似的东西:
UIBezierPath *roundedCornerRectangle = [UIBezierPath bezierPathWithRoundedRect:self.bounds cornerRadius:10]; // create bezier path
UIRectFill(self.bounds); // initialize rectangle onto view, will appear with default settings which is a black rectangle
[[UIColor whiteColor] setFill]; // set color to white
[roundedCornerRectangle fill]; // fill rectangle with color
[self drawShape];