day1 2013.10.14
IBOutlet 加上后实现类里的 变量和方法 可以与xib文件里的控件链接
-(IBAction) keyboardDismiss:(id)sender { [sender resignFirstResponder]; }
让键盘消失
- (void)viewDidLoad { [body_height setKeyboardType:UIKeyboardTypeNumbersAndPunctuation]; [body_weight setKeyboardType:UIKeyboardTypeNumbersAndPunctuation]; }
使用数字键盘
strong: 这要求运行时自动地保留对这个对象的引用。换而言之,ARC(Automatic Reference Counting)在运行时会一直把这个对象保留在内存里,直到它不再被任何其他对象引用。之后,其所占的内存会被自动释放。
assign: 表示这个属性的值会被直接设定,不需要任何内存管理。一般只用在非对象类的数据,比如 float。
@property 用来声明属性
@synthesize 自动完成get 和 set方法 就不用你写方法了 和@property一起使用,java也该引入这种方式,挺方便的。
@class 导入一个类,如果没导入的话会像java一样报 can‘t find the class , 这个就像java的 import
NSMutableArray *bugs = [NSMutableArray arrayWithObjects:bug1, bug2, bug3, bug4, nil];
感觉上就是java里的 arrayList
UINavigationController *navController = (UINavigationController *)self.window.rootViewController; MasterViewController *masterController = [navController.viewControllers objectAtIndex:0];
得到现在运行的 rootViewController 的 viewController 的第一个section。
- (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view, typically from a nib. }
当controller的view导入到内存中就会调用这个方法
-(void)viewDidAppear:(BOOL)animated { [super viewDidAppear:animated]; }
通知视图控制器,当前视图将要被加入到视图结构中去。
2013.11.8
@protocol
就像java里的接口, 而@interface更像是一个对象的声明
@protocol classADelegate -(void) methodA; -(void) methodB; @end
@interface classB <classADelegate> { } @end
这样子就是classB实现了classA的protocol
@interface classA : NSObject { int x; } - (void) methodA; @end
这样用 : 就是classA 继承了 NSObject 了