基于纯代码的方式实现界面转换
1、创建空工程
创建第一个页面文件 不用xib
在主界面加载第一个页面 前置声明 用导航
在应用方法里把第一个页面创建出来,直接alloc init 就可以
不需要release,因为他是成员
self.first=[[firstViewalloc]init];
self.iNal = [[UINavigationControlleralloc]initWithRootViewController:self.first];
self.window.rootViewController=self.iNal;
2、创建cell 继承UITableViewCell
声明需要的控件
@property(nonatomic,retain) UILabel* titleLabel;
set get方法 声明控件实现方法
在方法实现文件中 initWithLabel(控件实现方法)方法里面初始属性 alloc initwithFrame
然后添加到上一个页面中[self.页面addSubview:控件];
if (self=[superinit]) {
titleLabel = [[UILabelalloc]initWithFrame:CGRectMake(10, 20, 30, 60)];
titleLabel.backgroundColor=[UIColorredColor];
titleLabel.textColor=[UIColorblueColor];
[self.contentViewaddSubview:titleLabel];
}
3、将cell作为实例变量 在第一个页面引用 前置声明
@classfirstViewCell;
在UIViewVieCell方法里面初始化cell,自定义cell
写出dealloc方法
使用自定义段cell初始化 self.自定义cell.text =@”内容”;
返回数据
if (cell == nil) {
self.iCell=[[firstViewCellalloc]initWithLabel];
cell = self.iCell;
}
4、创建第二个页面
继承UIViewController
把需要de控件声明出来,setget方法 dealloc里面nil
@property(strong,nonatomic)UILabel * titleLabel;
在viewDidLoad方法里面初始化
可以指定一些控件的属性比如self.控件名.text=@”内容”;还有字体段大小,颜色,对齐方式等属性
最后添加到当前的视图里面
self.titleLabel=[[UILabelalloc]initWithFrame:CGRectMake(30, 30, 260, 200)];
self.titleLabel.text=@"bbbbb";
self.titleLabel.textColor=[UIColorgrayColor];
self.titleLabel.backgroundColor=[UIColoryellowColor];
[self.viewaddSubview:titleLabel];
5、切换
在第一个页面包含第二个页面的头文件或定义成成员变量
#import "secondView.h"
在didSelectRowIndexPath方法里先把第二个页面初始化 alloc init
添加到导航条上 [self.navigation… push方法 ]
最后release掉
secondView * second=[[secondViewalloc]init];
[self.navigationControllerpushViewController:second animated:YES];
[second release];