如何实现双击文本消息放大


            
2017-11-02 15:29 | iOS

回答:

如何实现双击文本消息放大


1、需要先创建一个 RCTextMessageCell 的 category 。添加一个代理


@property(nonatomic, weak) id<DoubleTapDelegate> delegate


和其代理方法


 - (void)doubleTapTextMessage:(RCMessageModel *)model; 


2、在 category 中重写 - (void)initialize  方法,添加手势。并将代理抛出去。


3、在会话页面实现这个代理方法,例子如下:


- (void)doubleTapTextMessage:(RCMessageModel *)model {

    //解决发送文本消息,里面双击刚发出的消息,进入查看页面,再退出查看页面,文本消息长按没有menuItem的问题

    [self.chatSessionInputBarControl resetToDefaultStatus];

    [self.chatSessionInputBarControl resignFirstResponder];


    if ([model.content isMemberOfClass:[RCTextMessage class]]) {

        RCTextMessage *msg = (RCTextMessage *)model.content;

        MagnifyMessageViewController *magnifyMessageVC = [[MagnifyMessageViewController alloc] init];

        magnifyMessageVC.message = msg.content;

        magnifyMessageVC.modalTransitionStyle = UIModalTransitionStyleCrossDissolve;

        [self presentViewController:magnifyMessageVC animated:YES completion:nil];

    }

}


MagnifyMessageViewController这个VC是自己实现一个VC,主要包括一个textView来展示文本消息,开发者可以自己来实现



附: category 的代码例子

RCTextMessageCell+RCEDoubleTapGesture.m

您认为此回答对您有帮助?

共有 0 位开发者认为此问题有帮助

我对此仍有疑问!继续追问