UITableViewController之聊天窗口
因为注册的时候 xib 不能同一个xib内容有两个 无法一起注册
因为有接收者和发送者两种cell格式
要创立两个xib 但可以写入同一个自定义的cell程序代码中 且identy不同 但要加入标识符
创立一个自己的ChartTableViewController 继承于UITableViewController 且要指定为根控制器
创立一个消息的模型 包括图片头像名称 标志Bool是否是自己发送的 消息内容 消息日期
将模型引用自定义cell中 在cell的.h文件中创建一个接口 在.m中重写set消息的方法
数据数组用来储存数据 对数组进行懒加载
在viewDidLoad文件中注册nib文件
改变对话框根据文本大小来改变 计算文本的尺寸 计算当前的X的值 根据计算出来的文本来改变按钮大小 cell的高度就是按钮大小再加一个值 在代理方法中根据indexPath.row来获取当前cell的大小 且放入字典中 再在另一个确定cell高度的代理方法中根据Key(indexPath.row)取出对应的cell应该有的高度
发送消息
1 用代理的方法
2 利用通知的方法
通知的
//使用通知中心
//获取通知中心对象
NSNotificationCenter *notify1=[NSNotificationCenter defaultCenter];
//注册通知
[notify1 addObserver:self selector:@selector(getNotification:) name:@"JRNotification" object:nil];
通知调用的方法
- (void)getNotification:(NSNotification *)notification{
NSLog(@"%@",notification.userInfo);
}
在键盘模型中
//获取通知中心
NSNotificationCenter * center=[NSNotificationCenter defaultCenter];
//要发送的通知内容
NSDictionary * dic=@{@"name":@"zoo",@"age":@"23"};
//给通知中心发消息
[center postNotificationName:@"JRNotification" object:nil userInfo:dic];
为了更好的效率要释放