ViewController

UIViewController 视图控制器

抽象类:不能直接通过创建使用对象,需要定义该类的子类,然后再创建对象使用

创建VC对象

UIViewController*vc = [[UIViewControlleralloc]init];

创建对象

RootViewController*rootVC = [[RootViewControlleralloc]init];

设置根视图(应用创建好之后 window上放置的第一个页面视图)

self.window.rootViewController= rootVC;

内存管理

[rootVCrelease];

视图写在viewDidLoad中

VC中 自带一个view 用于铺设视图 默认颜色为透明

UIImageView图片

相对路径  修改后仍然可以正常显示

绝对路径  如果文件位置修改 就找不到了

收获路径(动态变化的绝对路径)

参数1:文件名

参数2:文件后缀

NSString*path = [[NSBundlemainBundle]pathForResource:@"color"ofType:@"png"];

imgView.image= [UIImageimageWithContentsOfFile:path];

圆角

imgView.layer.cornerRadius= imgView.frame.size.width/2;

根据边界把多余部分切掉

imgView.clipsToBounds=YES;

导航控制器

导航栏设置:controller(栏)/item(栏上的元素)

导航栏显示/隐藏

(1)self.navigationController.navigationBarHidden=NO;

(2)self.navigationController.navigationBar.hidden=YES;

栏样式

self.navigationController.navigationBar.barStyle=UIBarStyleBlack;

半透明效果

开始效果时屏幕左上角为坐标原点

关闭时导航栏的左下角为坐标原点

self.navigationController.navigationBar.translucent=YES;

栏背景颜色

self.navigationController.navigationBar.backgroundColor= [UIColoryellowColor];

栏颜色

self.navigationController.navigationBar.barTintColor= [UIColorgrayColor];

栏标题

(1)self.title=@"这是一个标题";

(2)self.navigationItem.title = @"这是一个猴赛雷的标题";

分段

UISegmentedControl*seg = [[[UISegmentedControlalloc]initWithItems:@[@"消息",@"电话"]]autorelease];

seg.frame=CGRectMake(0,0,100,30);

栏标题视图

self.navigationItem.titleView= seg;

栏左侧按钮

self.navigationItem.leftBarButtonItem= [[[UIBarButtonItemalloc]initWithBarButtonSystemItem:UIBarButtonSystemItemSearchtarget:selfaction:@selector(left:)]autorelease];

栏右侧按钮

系统按钮样式

UIBarButtonItem*b1 = [[[UIBarButtonItemalloc]initWithBarButtonSystemItem:UIBarButtonSystemItemTrashtarget:selfaction:@selector(right1)]autorelease];

自定义按钮图片

UIBarButtonItem*b2 = [[[UIBarButtonItemalloc]initWithImage:[UIImageimageNamed:@"dianzan"]style:UIBarButtonItemStylePlaintarget:selfaction:@selector(right2)]autorelease];

self.navigationItem.rightBarButtonItems=@[b1, b2];

修改导航栏上内容的颜色

self.navigationController.navigationBar.tintColor= [UIColorwhiteColor];

跳转页面

响应事件

页面间传值

通过代理实现传值

#warning协议1:声明协议(定义一个带参数的方法)

#warning协议2:定义代理人属性

#warning协议3:返回上一页之前让代理人调用协议方法

#warning协议4.签协议

#warning协议5:设置代理人

#warning协议6:实现协议方法

#warning属性1:在第二页声明一个属性用来保存数据

#warning属性2:在push页面之前传值(创建对象之后push之前)

#warning属性3:通过属性给当前页内容赋值

你可能感兴趣的:(ViewController)