AnyChat技术支持论坛

标题: 新消息提示问题 [打印本页]

作者: medex123    时间: 2014-7-10 09:54
标题: 新消息提示问题
我有两个页面 一个是房间的人数v1 一个是聊天的页面v2 我在v1设置了一下未读消息提醒(就是在来新信息的代理方法里卖弄实现了一些内容,要是我打开这些未读消息能成功的打开,此时已经在v2界面了),可是为什么我回到v1界面后 这个来新信息的代理方法就不起作用了呢 来信息后也不会去调用  如果我不打开v2页面  能实现我想实现的效果 只要打开v2后在回去  就不能实现我的效果了  求解释!!!!1
作者: 廖斌    时间: 2014-7-10 09:58
您好,方便的话,将您的代码贴上来,我们技术人员帮您看下
作者: medex123    时间: 2014-7-10 10:04
廖斌 发表于 2014-7-10 09:58
您好,方便的话,将您的代码贴上来,我们技术人员帮您看下

-(void)OnAnyChatTextMsgCallBack:(int)dwFromUserid :(int)dwToUserid :(BOOL)bSecret :(NSString *)lpMsgBuf
{
    [numArray addObject:lpMsgBuf];
    label.text = @"";
    //设置未读消息提醒label
    label = [[UILabel alloc]initWithFrame:CGRectMake(280, 5, 20, 30)];
    label.backgroundColor = [UIColor purpleColor];
    label.textAlignment = NSTextAlignmentCenter;
    NSNumber * num = [NSNumber numberWithInt:dwFromUserid];
    NSIndexPath * indexPath = [NSIndexPath indexPathForRow:[dataArray indexOfObject:num] inSection:0];
    UITableViewCell * cell = [tableView cellForRowAtIndexPath:indexPath];
    [cell addSubview:label];
    NSString * str = [NSString stringWithFormat:@"%d",numArray.count];
    label.text = numArray.count == 0?@"":str;
}

就这个方法  只有不经过[self.navigationController pushViewController:meGC animated:YES]这个方法推出v2就能成功调用   但是只要推出v2  在回到v1的话 这个方法就不在调用了
作者: admin    时间: 2014-7-10 10:32
您好,您在V2界面中,是否有anychat.textMsgDelegate = self;的调用,将事件进行了接管?

作者: medex123    时间: 2014-7-10 10:43
admin 发表于 2014-7-10 10:32
您好,您在V2界面中,是否有anychat.textMsgDelegate = self;的调用,将事件进行了接管?

额 是的  我加断点看了看  发现有消息来的时候v2的这个方法调用了  那该怎么做啊 让第一个页面调用 不让v2的这个方法调用
作者: admin    时间: 2014-7-10 11:36
在返回V1页面时,重新注册一下事件Delegate。

另一种更合适的方法就是,只在V1页面中注册事件Delegate,而通过自己的方式将相关的消息投递到V2页面,也就是说不在V2页面注册事件Delegate。
作者: medex123    时间: 2014-7-10 15:30
admin 发表于 2014-7-10 11:36
在返回V1页面时,重新注册一下事件Delegate。

另一种更合适的方法就是,只在V1页面中注册事件Delegate, ...

恩 问题 解决 谢谢哈  




欢迎光临 AnyChat技术支持论坛 (http://bbs.anychat.cn/) Powered by Discuz! X3