1.UITableView算高度
UITableView算高度最好不要用以下2行代码自动撑高度, iOS9.0上reloadData后,tableview会滚到顶部
rowHeight = UITableViewAutomaticDimension;
estimatedRowHeight = xxx
2.UIKeyboardWillShowNotification 通知获取键盘高度
CGRect keyboardEndFrame = [noti.userInfo[UIKeyboardFrameEndUserInfoKey] CGRectValue];
系统自带键盘回调一次
搜狗键盘回调3次 键盘高度分别是 0 , 226, 292,如果进行动画可能发生跳动
2.FLEXBOX布局
属性定义了子视图的主轴方向 column:是上下 row:左右
flexDirection: column, row, column-reverse, row-reverse
属性定义了子视图在主轴上的对齐方式
justifyContent: flex-start | flex-end | center | space-between | space-around | space-evenly
属性定义项目在交叉轴上的对齐方式
alignItems: flex-start | flex-end | center | baseline | stretch
3.真机调试包地址
https://github.com/iGhibli/iOS-DeviceSupport/tree/master/DeviceSupport
4 TextView 相关
去除 textView 左右边距:
self.textView.textContainer.lineFragmentPadding = 0;
去除 textView 上下边距:
self.textView.textContainerInset = UIEdgeInsetsZero;
判断输入是否有高亮部分
UITextRange *selectedRange = [textView markedTextRange];
//获取高亮部分
UITextPosition *position = [textView positionFromPosition:selectedRange.start offset:0];
// 如果在变化中是高亮部分在变,就不要计算字符了
if (!(selectedRange && position)) {
// 输入完成
}
5 TextFiled 相关
自定义占位符颜色
- (void)drawPlaceholderInRect:(CGRect)rect {
// 先计算size
CGSize size = [self.placeholder sizeWithAttributes:@{NSFontAttributeName : self.font}];
[self.placeholder drawInRect:CGRectMake(0, (rect.size.height - size.height) / 2.0, rect.size.width, rect.size.height)
withAttributes:@{NSForegroundColorAttributeName : self.placeholderColor, NSFontAttributeName : self.font}];
}
网友评论