// AppDelegate.h // 01-HelloWorld的实现 // /* 新建工程的时候,Use Core Data:比如本地缓存, Include Unit test:增加单元测试 Include UI test:UI的测试。 AppDelegate.h:代理 AppDelegate.m ViewController.h:控制器 ViewController.m: Main.storyboard:主故事板 Assets.xcassets:图片资源 LaunchScreen.storyboard:启动屏幕,做广告的, Info.plist:应用的配置信息 Supporting Files:外部拉入的东西 程序从Supporting Files下面的main.m文件启动。找到AppDelegate.m代理,做事情的,找MAin Inteface。 Bundle:唯一标示, Team:打包需要证书。 Deployment Target:预编译的版本,一般选择7.0,8.0, MAin Inteface(工程--General):主交互界面,第一个启动的界面(storyboard)。 View Controller:是用来管理View和VIew里面的内容的。 展示给用户的是View。一个控制器只能够管理一个页面,负责处理事件。 也可以自定义一个storyboard作为程序的启动界面,并且新的storyboard要自己拖一个View Controller和View。并且加一个箭头(title--is init View Controller)就有可一个箭头。并且可以拖多个控制器。 可以为View Controller自定义class,右键--new file--Cocoa Touch Class--要继承UIViewController,然后在面板上Class选择自定义的class(My2ViewController),这样就为View Controller绑定了自定义的My2ViewController。 */ #import <UIKit/UIKit.h> @interface AppDelegate : UIResponder <UIApplicationDelegate> @property (strong, nonatomic) UIWindow *window; @end
// // My2ViewController.h // 01-HelloWorld的实现 // #import <UIKit/UIKit.h> @interface My2ViewController : UIViewController /* //只有声明为IBOutlet的属性才能跟storyboard的属性进行关联,放在.m文件的类扩展里面,放在.h文件里面是公有的,放在.m文件里面是私有的。 @property(nonatomic, weak)IBOutlet UILabel *label; */ @end
// // My2ViewController.m // 01-HelloWorld的实现 // /* IBAction:从返回值的角度看,作用相当于void, IB:Interface Builder一个软件。 只有返回值声明为IBAction的方法,才能根storyboard中的控件进行连线。 */ #import "My2ViewController.h" @interface My2ViewController () //类扩展,为类扩展属性和方法,类扩展也是匿名分类,放私有的属性和方法, //只有声明为IBOutlet的属性才能跟storyboard的属性进行关联,放在.m文件的类扩展里面,放在.h文件里面是公有的,放在.m文件里面是私有的。 //判断对象在不在内存中是通过是否有强指针指向。 有一个强指针指向着View Control。View Control是不会死的,View Control有一个强指针指着View,View也不会死,View里面也有一个强指针指着label。所以这里是weak不影响,因为他本来就不会死。 @property(nonatomic, weak)IBOutlet UILabel *label; @end @implementation My2ViewController - (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view. } - (void)didReceiveMemoryWarning { [super didReceiveMemoryWarning]; // Dispose of any resources that can be recreated. } /* #pragma mark - Navigation // In a storyboard-based application, you will often want to do a little preparation before navigation - (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender { // Get the new view controller using [segue destinationViewController]. // Pass the selected object to the new view controller. } */ #pragma mark -点击b1 -(IBAction)click1{ //点击2个圈圈分屏通过连线和按钮建立关联, NSLog(@"111"); self.label.textColor = [UIColor redColor]; self.label.text = @"11"; } -(IBAction)click2{ NSLog(@"222"); self.label.textColor = [UIColor greenColor]; self.label.text = @"22222222222222222222222222222222222222222222222222222222222222222"; self.label.backgroundColor = [UIColor blueColor]; } -(IBAction)click3{ NSLog(@"333"); // 改变文字的颜色 self.label.textColor = [UIColor redColor]; //self是当前控制器 // 改变文本的内容 self.label.text = @"我是一段红色的文字"; // 改变背景颜色 self.label.backgroundColor = [UIColor greenColor]; // 文字居中 self.label.textAlignment = NSTextAlignmentCenter; // 改变文字的大小,默认是17, self.label.font = [UIFont systemFontOfSize:20.f]; } @end
本文转自农夫山泉别墅博客园博客,原文链接:http://www.cnblogs.com/yaowen/p/7445226.html,如需转载请自行联系原作者