UITabBarController : UIViewController
UITabBarController :管理UIViewController(以数组的方式管理-----并列关系)
UINavigationController :管理UIViewController(以栈的方式管理-----层级关系)
UITabBarController : 高度为49px,如果要加自定义的图片到Item上,图片高度为30px
//UITabBarController : 管理UIViewController
UITabBarController *tabarCtrl = [[UITabBarControlleralloc]init];
//向UITabBarController添加控件
ViewController *viewCtrl = [[ViewControlleralloc]init];
viewCtrl.view.backgroundColor = [UIColor purpleColor];
//定制UITabBarController上的按钮
//UITabBarItem 定制tabbar控件专用类
viewCtrl.tabBarItem = [[[UITabBarItemalloc]initWithTabBarSystemItem:UITabBarSystemItemDownloadstag:1] autorelease];
//—— 初始化一个UITabBarItem 控件
- (id)initWithTabBarSystemItem:(UITabBarSystemItem)systemItem tag:(NSInteger)tag;
//——
NSArray *arr = [NSArray arrayWithObjects:viewCtrl, nil];
[viewCtrl release];
tabarCtrl.viewControllers = arr;
//将UITabBarController作为window的根视图控制器
self.window.rootViewController = tabarCtrl;
[tabarCtrl release];
UINavigationController *navCtrl = [[UINavigationControlleralloc]initWithRootViewController:viewCtrl]; //给viewCtrl添加导航栏,将
导航控制器作为视图存放进数组arr,
[arr addObject:navCtrl];
tabarCtrl.viewControllers = arr;
//协议 : 一组未实现的接口
/* 代理对象:(A)
* 谁实现接口,谁就是代理,就必须遵守该协议,在代理的.h文件中写加上<协议名>
* 协议(接口)实现在代理的.m文件中
* 被代理对象:(B)
* 要声明一个成员变量 id<协议名> delegate;实现delegate的getter/setter方法
* 被代理对象中实现一个方法C,调用协议(接口),协议在被代理对象中不实现.
*用法:
* B.delegate = A;
*
*[B 调用C方法];
*/
//代理调用协议的固定写法
if (delegate &&[delegate performSelector:@selector(协议)]) {
[delegate performSelector:@selector(协议)];
}
NSUserDefault : NSObject
NSUserDefault的用法:
AppDelegate:
//创建一个对象
NSString *pswd = @"13579";
//在NSUserDefault中保存一个对象
[[NSUserDefaultsstandardUserDefaults] setObject:pswd forKey:@"password"];
/* The value parameter can be only property list objects: NSData, * NSString, NSNumber, NSDate, NSArray, or NSDictionary.
* For NSArray and NSDictionary objects, their contents must be
* property list objects.
*/
//同步到本地磁盘
[[NSUserDefaultsstandardUserDefaults] synchronize];
RootViewCtroller:
//读取NSUserDefault中的对象
//读取对象时的key必须与存对象时的key一致
NSString *pswd = [[NSUserDefaultsstandardUserDefaults]objectForKey:@"password"];