1.
如何在@property中声明delegate的方法?
@protocol MyDelegateProtocol
- (NSNumber*) someFunction:(NSArray*) anArray;
@end
@interface MyClass : NSObject
@property (nonamatic,unsafe-unretained) id<MyDelegateProtocol> delegate
@end
如果类中有自己写的protocol,我们要在类中调用协议中的方法就需要在@property中声明delegate,这样在类中可以直接通过[self.delegate someFunction:xxxx];来调用协议中的方法。
2.
如何把原来工程转化为ARC模式?
在xcode下点击Edit-Refactor-Convert to Objective-C ARC,然后对应每个界面修改代码中的@property属性,通过模拟器中的模拟内存警告进行反复测试
3.
调用[self.view addSubviewToBack:xxxx];这个方法用于给现有的view添加背景视图
4.
-(void)presentModalViewController:(UIViewController *)modalViewController animated:(BOOL)animated;方法的使用?
添加一个viewController,添加动画的话,viewController会垂直出现,比如点击当前页面的收藏按钮,如果用户没有登录或者注册的话会先弹出一个viewController让用户登录,这个界面的弹出会用当前的viewController调用这个方法。新版本该方法改为:presentViewController:animated:completion:
5.
NSArray中的方法
-(NSUInteger)indexOfObject:(id)anObject;找到对象的index。这个object是属于NSArray的一个元素
6.
navigationController popToRootViewControllerAnimated:YES];切换到rootViewController,最底层的那个viewController
[navigationController popToViewController:animated:]切换到viewController
7.
[application setStatusBarHidden:NOwithAnimation:UIStatusBarAnimationFade];对状态栏进行修改,也可以将Hidden设置为YES,将状态栏隐藏。注意statusBar为20个像素大小。
8.
关于viewController的初始化方法,不只是包括initWithNibName,这个只是最基本的对一个controller的初始化方法,也要注意在一些情况下调用更为完善的初始化方法(自定义的初始化方法)这样才能让controller获得必要的数据
9.
进行BuildSetting和BuildPhases的设置
10.
学会了给viewController添加自定义的navigationBar
11.
在UINavigationController的rootViewController中调用自定义方法[self.detailViewController setNavigationBarTitle:@”牛奶”]的方法设置自定义的导航栏title,而不是用系统的self.navigationController.title = @”牛奶”;
14.
[object isKindOfClass:[NSDictionary class]]
[object isMemberOfClass:[NSDictionary class]]
-(BOOL)isKindOfClass:Class(aClass);
-(BOOL)isMemberOfClass:Class(aClass);
二者返回的都是BOOL值,第一个判断调用此方法的对象是不是aClass的实例或者aClass子类的对象
后者判断是不是aClass的实例。