布局细碎小总结:
一、设置多行Lable间行间距
主要通过NSMutableAttributedString实现,具体代码实现如下:
NSMutableAttributedString*attributedString = [[NSMutableAttributedString alloc]initWithString:cell.tempDetailLabel.text];
NSMutableParagraphStyle *paragraphStyle = [[NSMutableParagraphStylealloc] init];
[paragraphStyle setLineSpacing:10];//调整行间距
[attributedString addAttribute:NSParagraphStyleAttributeNamevalue:paragraphStyle range:NSMakeRange(0, [cell.tempDetailLabel.text length])];
cell.tempDetailLabel.attributedText = attributedString;
[cell.tempDetailLabel sizeToFit];
二、设置cell的高度为动态设置
tableView.estimatedRowHeight = 200;//预估计高度
tableView.rowHeight= UITableViewAutomaticDimension;
三、为View、Lable、Button等添加边线
layer.cornerRadius //设置圆角
layer.borderWidth//设置边线宽度
layer.masksToBounds
layer.borderColorFromUIColor//设置边线颜色 : 需要在实现的view里添加以下代码
@implementation CALayer(Additions)
- (void)setBorderColorFromUIColor:(UIColor*)color
{
self.borderColor = color.CGColor;
}
@end
四、设置自定义导航返回键
self.title = @"找回密码"; //设置导航title
self.navigationController.navigationBarHidden= NO;
self.navigationController.navigationBar.topItem.title= @"";//设置导航返回键title
隐藏返回键
[self.navigationItemsetHidesBackButton:YES];
五、程序界面加载过程
init-初始化程序
- (void)awakeFromNib;
这个方法用的时候,outlet还没有连接起来,是view Controller刚从storyboard建的时候,没有完全建好,不过可能有一些事情要在这个方法里面完成,比如splitViewDelegate,需要在非常早期完成
viewDidLoad-加载视图
viewWillAppear-UIViewController对象的视图即将加入窗口时调用;
viewDidApper-UIViewController对象的视图已经加入到窗口时调用;
viewWillDisappear-UIViewController对象的视图即将消失、被覆盖或是隐藏时调用;
- (void)viewWillLayoutSubviews;
-(void)viewDidLayoutSubviews;
在由frame的改变而触发输出subview之前,这个方法被调用
viewDidDisappear-UIViewController对象的视图已经消失、被覆盖或是隐藏时调用;
viewVillUnload-当内存过低时,需要释放一些不需要使用的视图时,即将释放时调用;
viewDidUnload-当内存过低,释放一些不需要的视图时调用。
六、用xib写UISCrollView时注意事项
1、先在view上加载一个UISCrollView在SCrollView再添加一个View作为contentView
2、在控件的底部位置 要做bottom设置
3、view对于ScrollView要EqualWdith、EqualHeight、把EqualHeight的优先级设置为250
4、当写多行Lable时宽度要固定 观察关联的控件位置是否是固定的
切记设置控件的底部位置
七、图片处理
imgView.contentMode =UIViewContentModeScaleAspectFit;
图片保持原比例裁剪
imgView.clipsToBounds=YES;
imgView.contentMode =UIViewContentModeScaleAspectFit;
八、界面搭建常用三方库
收键盘:TFKeyboardAvoidingCollectionView给整个界面直接添加了收键盘 感觉好用到爆啊coreTFManagerVC
附上键盘的几种风格:
UIKeyboardTypeDefault,
//默认键盘:支持所有字符
UIKeyboardTypeASCIICapable,
//支持ASCII的默认键盘
UIKeyboardTypeNumbersAndPunctuation,//标准电话键盘,支持+*#等符号
UIKeyboardTypeURL, // URL键盘,有.com按钮;只支持URL字符
UIKeyboardTypeNumberPad, //数字键盘
UIKeyboardTypePhonePad,//电话键盘
UIKeyboardTypeNamePhonePad, //电话键盘,也支持输入人名字
UIKeyboardTypeEmailAddress,//用于输入电子邮件地址的键盘
九、界面搭建常用辅助工具
PxCook很好用 标注切图神器
Xmind思维导图