2013-03-07 156 views
0

我想我ViewController使用这种方法变化子UIView的背景颜色

- (void)viewDidLoad 
{ 
    [super viewDidLoad]; 
    addCourse = [[UIView alloc]init]; 
    addCourse.backgroundColor = [UIColor redColor]; 
    [addCourse.layer setCornerRadius:50.0f]; 
    [addCourse.layer setMasksToBounds:YES]; 
} 

哪里addCourse是我的subview但背景颜色是白色还是在添加子视图。我正在使用storyboard并添加了subview并将该视图与viewcontroller关联,我确实编写了IBOutlet和属性并进行了合成,但仍无法找到更改背景颜色的方法。

我该如何改变它?

+0

如何在ViewController中添加addCourse? – 2013-03-07 04:37:40

+0

1.您没有设置框架2.您没有将子视图添加到主视图!那么你将如何得到它? – 2013-03-07 04:53:13

+0

设置框架并将子视图添加到self.view。 addCourse.frame = CGRectMake(10.0,10.0,200.0,200.0); [self.view addSubview:addCourse]; – Cintu 2013-03-07 06:14:07

回答

0

如果你已经与视图控制器连接,那么你只需要在你的代码

addCourse = [[UIView alloc]init]; 

因为,它创建子视图的新实例中删除以下行。

+0

我删除了该行,一切正常,谢谢 – faisal60 2013-03-07 12:54:07

+0

您的欢迎.... :) – 2013-03-07 12:55:38

0

您还没有将addCourse添加到您的视图控制器中,如我所见。替换为您viewDidLoad方法:

- (void)viewDidLoad 
{ 
    [super viewDidLoad]; 
    addCourse = [[UIView alloc]init]; 
    addCourse.backgroundColor = [UIColor redColor]; 
    [addCourse.layer setCornerRadius:50.0f]; 
    [addCourse.layer setMasksToBounds:YES]; 
    //ADDED THIS LINE 
    self.view = addCourse; 
} 
+0

咦?你的意思是[self.view addSubview:addCourse]; ?? – danh 2013-03-07 04:43:02

0

试试这个:

addCourse = [[UIView alloc]initWithFrame:CGRectMake(x, y, w, h)]; 
addCourse.backgroundColor = [UIColor redColor]; 
[addCourse.layer setCornerRadius:50.0f]; 
[addCourse.layer setMasksToBounds:YES]; 

[self.view addSubview:addCourse]; 

这肯定会帮助你。
谢谢。

0

见我已经更新了你的代码(只有你需要设置视图的框架),我得到的结果

请!更新您的代码,这样

- (void)viewDidLoad 
{ 
    [super viewDidLoad]; 

    //custom view 
    UIView *addCourse = [[UIView alloc]init]; 
    CGRect myViewframe = CGRectMake(10.0f, 90.0f, 100.0f, 100.0f); 
    addCourse.frame=myViewframe; 
    addCourse.backgroundColor = [UIColor redColor]; 
    [addCourse.layer setCornerRadius:50.0f]; 
    [addCourse.layer setMasksToBounds:YES]; 

    [self.view addSubview:addCourse]; 
} 

和下面是结果屏幕

enter image description here

希望这有助于你。

+0

非常感谢你它非常有效! – faisal60 2013-03-07 12:53:28

+0

@ faisal60高兴地知道,欢呼! :) – swiftBoy 2013-03-07 18:27:45