1.手势识别

http://yulingtianxia.com/blog/2016/12/29/Multimedia-Edit-Module-Architecture-Design/

2.开屏广告

http://www.jianshu.com/p/d5e42fd92484

3.Xcode快捷键

http://www.jianshu.com/p/2b072b206c90

4.成长之路

http://www.jianshu.com/p/280058ab16f3

5.category

GetSenderProfile得到TIMUserProfile类型,通过category实现IMUserAble

/**

*  获取发送者资料(发送者为自己时可能为空)

*

*  @return 发送者资料,nil 表示没有获取资料,目前只有字段:identifier、nickname、faceURL、customInfo

*/

-(TIMUserProfile *) GetSenderProfile;

- (void)onRecvGroup:(TIMMessage *)msg
{
id<IMUserAble> info = [msg GetSenderProfile];
if (!info)
{
info = [msg GetSenderGroupMemberProfile];
}
for(int index = ; index < [msg elemCount]; index++)
{
TIMElem *elem = [msg getElem:index];
if([elem isKindOfClass:[TIMTextElem class]])
{
//消息
TIMTextElem *textElem = (TIMTextElem *)elem;
NSString *msgText = textElem.text;
[self onRecvGroupSender:info textMsg:msgText];
}
else if([elem isKindOfClass:[TIMCustomElem class]])
{
// 自定义消息
[self onRecvGroupSender:info customMsg:(TIMCustomElem *)elem];
}
}
}
@implementation TIMUserProfile (IMUserAble)

// 两个用户是否相同,可通过比较imUserId来判断
// 用户IMSDK的identigier
- (NSString *)imUserId
{
return self.identifier;
} // 用户昵称
- (NSString *)imUserName
{
return self.nickname.length > ? self.nickname : self.identifier;
} // 用户头像地址
- (NSString *)imUserIconUrl
{
return [NSString isEmpty:self.faceURL] ? nil : self.faceURL;
} - (BOOL)isEqual:(id)object
{
BOOL isEqual = [super isEqual:object];
if (!isEqual)
{
if ([object conformsToProtocol:@protocol(IMUserAble)])
{
id<IMUserAble> io = (id<IMUserAble>)object;
isEqual = [[self imUserId] isEqualToString:[io imUserId]];
}
}
return isEqual;
}

最新文章

  1. UVA 11021 C - Tribles(概率DP)
  2. I18N
  3. SQL数据类型解释
  4. (Ios 实战) 自定义UITableView
  5. {转}每次从vss获取文件都是只读
  6. python password输入
  7. HDU 4493 Tutor (控制精度)
  8. oracle pl/sql简介、块、过程
  9. jquery判断输入文字个数的统计代码
  10. SPOJ3267 D-query 离线+树状数组 在线主席树
  11. listview 点击条目 自动置顶或者自动置底部
  12. UML学习网址列表
  13. 利用tornado实现表格文件预览
  14. es6入门总结
  15. 【PyQt5-Qt Designer】QSpinBox-微调框
  16. 优雅地记录Python程序日志2:模块组件化日志记录器
  17. Axiom3D写游戏:用Overlay实现Mesh浏览.
  18. Unity5.x Reflection Probe反射探针
  19. Spark Core 资源调度与任务调度(standalone client 流程描述)
  20. Linux OOM 自动杀死进程

热门文章

  1. 转载:ArcEngine 唯一值查询
  2. C语言版本:单链表的实现(优化版本)
  3. redis 事务,持久化,日志,主从,VM
  4. Alpha冲刺——day7
  5. Redis 总结精讲
  6. TCP/IP之大明内阁 转
  7. Android 出现 maybe missing INTERNET permission 错误问题解决
  8. DevOps简介
  9. java 重载 : 1.参数个数不同,2.参数类型不同
  10. SSM 中 BaseController 使用 session