xib 简单使用
1 : xib跳转
在一个viewController的xib里拖一个button进去.
把控件拖成属性
(如果要删除控件,右键找到关联项,叉掉关联才能彻底删除)
在跳转方法里写跳转语句
2 : // tableview
在viewController拖一个tableview,选中tableview,选中右下角倒数第二个,给tableview加约束.然后点击下面的add...,如果变成橙色,说明不匹配.点击右下角的倒数第一个,点击update frame
给tableview指定代理
选中左边的tableview,按住control,拖给file’s owner.选中代理
注册cell
找到viewController,将tableView拖成属性.然后回到代码处注册.签代理
3 : // 自定义cell
注册cell的时候要用nibName注册.
UINib *nibCell = [UINib nibWithNibName:NSStringFromClass([SelfDefinitionTableViewCell class]) bundle:nil];
[self.selfTableView registerNib:nibCell forCellReuseIdentifier:NSStringFromClass([SelfDefinitionTableViewCell class])];
给自定义cell指定重用池 : 右边侧栏 — > 第四个 — > identifier 给定重用池名
在cell的xib文件,拖入控件,给控件加约束.选中控件,点击右下角最后一个,点击add missing … ,然后把控件拖成cell的属性. 在awakeFromNib写属性内容
在viewDidLoad查找cell此时view的大小是[600,600]
在viewDidAppear才真正完成视图适配
viewDidLoad — > viewWillAppear — > viewDidAppear
4 : // 自定义View
(1) : 新建一个controller
(2) : command + N — > 继承于UIView — > 问题 : 没有xib — > command + N — > User Interface — > view — > 名字与刚才创建的view名要一致
(3) : 在controller拖一个view — > 选中控件 — > 右侧栏第三个 — > class 写成创建的view的名
(4) : 自定义view的xib文件中,首先选中file’s owner — > 右侧栏第三个 — > class 里写自定义view的名
(5) : 在自定义view的.m中,写代码
在xib中,将左边的view 拖到自定义view中成属性,然后将view 添加到self上
(6) : - (void)awakeFromNib{
[[NSBundle mainBundle] loadNibNamed:NSStringFromClass([ZDYView class]) owner:self options:nil];
[self addSubview:self.myView];
self.myView.frame = self.bounds;
}
5 : collectionView
拖进去一个全屏的collectionView
指定代理人 — > viewController上签协议 — > 写方法
注册的时候:如果是系统的,用class,自定义的,用nib
定义flowLayout
点击左边的flowLayout,然后点击右侧栏的标尺,进行改尺寸.也可以通过手动敲代码设置
6 : 自定义collectionViewCell
在cell里拖一个tableview,跟cell一样大小
tableview 的代理签给cell(如果是在viewController代理就签给file’s owner,如果是自定义的cell,就签给cell)
(如果想要将tableview的代理签在外面,就不需要在xib中签代理,只拖一个tableview就行了)
右键左边的tableView,点住代理拖向cell
把tableview拖到cell中拖成属性,在viewcontroller上签代理,多签一个UICollectionViewDelegateFlowLayout,来修改flowLayout的itemSize.