码迷,mamicode.com
首页 > 移动开发 > 详细

IOS笔记4

时间:2015-04-15 22:46:56      阅读:170      评论:0      收藏:0      [点我收藏+]

标签:

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];

 

IOS笔记4

标签:

原文地址:http://www.cnblogs.com/liqiantu/p/4430284.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!