如何在iOS中对视图放置白色背景

时间:2013-12-11 00:03:19

标签: ios uiview ios7

我在iOS中有一个视图,我希望有一个白色矩形背景(带有弯角),类似于下图中的那个。任何人都可以帮助我如何在iOS中实现这一目标

enter image description here

3 个答案:

答案 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];