我有这个简单的故事板:
它做的很简单......如果按下buttonOne,它将转到UIView * viewTwo。当按下导航栏上的“返回”按钮时,它将返回ViewController。
现在,我想要玩的是当按下这个按钮时,我想添加一些颜色作为viewTwo的背景。
这是我的.h文件:
#import <UIKit/UIKit.h>
@interface ViewController : UIViewController
@property (strong, nonatomic) IBOutlet UIView *viewTwo;
- (IBAction)buttonOne;
@end
这是我的.m文件:
#import "ViewController.h"
@interface ViewController ()
@end
@implementation ViewController
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
}
- (void)didReceiveMemoryWarning
{
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
- (IBAction)buttonOne {
UIColor *colour = [[UIColor alloc]initWithRed:27.0/255.0 green:56.0/255.0 blue:152.0/255.0 alpha:1.0];
_viewTwo.backgroundColor = colour;
}
@end
该代码没有任何问题...构建成功并在模拟器上运行没有错误,但为什么颜色没有在viewTwo上显示?
我在这里错过了什么?感谢。
更新:我添加了这一行:
[colour release];
但似乎release
无法处理我的Xcode。它说:
'release'不可用。不适用于自动参考 计数模式。
答案 0 :(得分:1)
你需要实现prepareForSegue storyBoard委托方法, 记得在故事板场景中命名segue标识符
-(void) prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
if ([segue.identifier isEqualToString:@"You segue name identifier"])
{
UIViewController* viewController = segue.destinationViewController;
UIColor *colour = [[UIColor alloc]initWithRed:27.0/255.0 green:56.0/255.0 blue:152.0/255.0 alpha:1.0];
viewController.view.backgroundColor = colour;
你可以删除: - (IBAction)buttonOne methode