标签:
1.文本size的计算方法
1 NSDictionary *dict = @{NSFontAttributeName: NJTextFont}; 2 CGSize maxSize = CGSizeMake(200, MAXFLOAT); 3 CGSize textSize = [_message.text boundingRectWithSize:maxSize options:NSStringDrawingUsesLineFragmentOrigin attributes:dict context:nil].size; 4 5 CGSize maxSize = CGSizeMake(200, MAXFLOAT); 6 CGSize textSize = [self sizeWithString:_message.text font:NJTextFont maxSize:maxSize];
2.将button设置完整背景图片
1.设置button的内边距
2.在button文本size加上内边距
3.使用resizeableImage方法拉伸图片
1 加载原有图片 2 UIImage *norImage = [UIImage imageNamed:imageName]; 3 获取原有图片的宽高的一半 4 CGFloat w = norImage.size.width * 0.5; 5 CGFloat h = norImage.size.height * 0.5; 6 生成可以拉伸指定位置的图片 7 UIImage *newImage = [norImage resizableImageWithCapInsets:UIEdgeInsetsMake(h, w, h, w) resizingMode:UIImageResizingModeStretch];
3.NSDate的用法
1 // 实现把当前时间作为发送时间 2 NSDate *date = [NSDate date]; // 创建时间对象 3 // NSLog(@"%@", date); 4 // 可以将时间转换为字符串 5 // 也可以将字符串转换为时间 6 // 2014-05-31 7 // 2014/05/31 8 // 05/31/2014 9 NSDateFormatter *formatter = [[NSDateFormatter alloc] init]; 10 // HH 代表24小时 hh代表12小时 11 formatter.dateFormat = @"HH:mm"; 12 NSString *time = [formatter stringFromDate:date]; 13 14 NSLog(@"time = %@", time); 15 message.time = time;
4.监听键盘通知设置键盘与view改变位置
1 [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardWillChange:) name:UIKeyboardWillChangeFrameNotification object:nil];
1 /* 2 userInfo = { 3 // 键盘弹出的节奏 4 UIKeyboardAnimationCurveUserInfoKey = 7; 5 //键盘弹出执行动画的时间 6 UIKeyboardAnimationDurationUserInfoKey = "0.25"; UIKeyboardBoundsUserInfoKey = "NSRect: {{0, 0}, {320, 216}}"; 7 UIKeyboardCenterBeginUserInfoKey = "NSPoint: {160, 588}"; 8 UIKeyboardCenterEndUserInfoKey = "NSPoint: {160, 372}"; 9 UIKeyboardFrameChangedByUserInteraction = 0; 10 UIKeyboardFrameBeginUserInfoKey = "NSRect: {{0, 480}, {320, 216}}"; 11 12 // 键盘弹出时候的frame 13 UIKeyboardFrameEndUserInfoKey = "NSRect: {{0, 264}, {320, 216}}"; 14 15 // 键盘隐藏时候的frame 16 UIKeyboardFrameEndUserInfoKey = "NSRect: {{0, 480}, {320, 216}}"; 17 }} 18 19 */ 20 NSLog(@"键盘弹出 %@", notification); 21 22 /* 23 计算需要移动的距离 24 弹出的时候移动的值 = 键盘的Y值 – 控制view的高度 = 要移动的距离 25 - 480 = -216 26 27 隐藏的时候移动的值 = 键盘的Y值 - 控制view的高度 = 要移动的距离 28 480 - 480 = 0 29 */
改变view位置时不需要加入动画,系统已经实现
5.将tableview滚动到最后一行
// 2.刷新表格 [self.tableView reloadData]; // 3.让tableveiw滚动到最后一行 NSIndexPath *path = [NSIndexPath indexPathForRow:self.messages.count -1 inSection:0]; /* AtIndexPath: 要滚动到哪一行 atScrollPosition:滚动到哪一行的什么位置 animated:是否需要滚动动画 */ [self.tableView scrollToRowAtIndexPath:path atScrollPosition:UITableViewScrollPositionBottom animated:YES];
标签:
原文地址:http://www.cnblogs.com/liqiantu/p/4430284.html