美文网首页
高亮对话气泡思路

高亮对话气泡思路

作者: 桔子听 | 来源:发表于2018-02-28 00:00 被阅读29次

    年前直播答题很火热,公司想在这个风口上飞起来,可惜不到三个月,广电总局出手整顿,发文如下:

    一、网络直播答题的内容要坚持正确导向,大力弘扬社会主义核心价值观和社会主义先进文化,传播健康有益的知识,不得传播国家法律法规禁止的内容,不得传播格调品味低下的内容,不得宣扬拜金主义和奢靡之风;

    二、开展网络直播答题节目的平台必须具有法定网络视听节目直播资质。未持有《信息网络传播视听节目许可证》的任何机构和个人,一律不得开办网络直播答题节目;

    三、具有资质的平台开办网络直播答题节目,必须切实履行主体责任,严格履行备案审核手续,完善内容审核管理制度和工作方案,做到问题处置及时,责任追究到人;

    四、直播答题节目主持人应当具备广播电视节目主持人相应的条件,具有高尚的道德品质和良好的业务素质;

    五、网络直播答题活动不得过度营销和过度炒作。

    为了写这篇文章,又百度了一下,目前只有百度的《极速挑战》回归。

    以上,一方面交代一下,我最近做的事。既然我们的直播答题已经不能做了,我又不能闲着,被公司调到其他项目组,依然是处在风口的项目。

    对话式小说,这个真是一个新名词,这个来自于国外的创意,目前国内赶风口的企业应该不下20家。什么是对话式小说呢?看下面截图:

    HOOKED

    这个是国外一个叫HOOKED的APP。看上去就是和我们常见的IM聊天页面很像,所以中间也会嵌入图片,音频,视频等等。这个的确比之前单纯的文字小说要丰富,更有一种身临其境的感觉。具体这个能不能成功不知道,据说,国外的这个蛮成功的。

    国内比较成功的是快点阅读,也是我们的抄袭对象,当然没人说我们是抄它,产品经理更不会承认。下面是快点阅读的截图:

    快点阅读

    OK,进入今天的正题。下面是我们设计师给的效果!简直和快点阅读一模一样!

    效果图

    实话说,进项目组才两天,一开始真以为是设计师设计的,觉得设计的很屌。言归正传,这个该怎么实现的?不用关注下面的图,这些都不是难点,难点是将背后的聊天页面加上蒙版,然后突出其中一条,高亮显示。

    能不能加一个蒙版,然后把这个蒙版的某个位置镂空,这样就能高亮显示下面的对话。这个方法想想就很麻烦,我要镂空一个和下面一样大小的对话框气泡,需要拿到气泡的frame,还有头像和名字。难且麻烦,由于这个对话页面不是我实现的,更是加大难度。

    我的做法是,先找到需要高亮的cell,及cell的frame,然后克隆一个一模一样的cell。先在整个页面加上蒙版,然后再将这个克隆的cell加到蒙版上。

    下面是代码:

    1.先创建一个蒙版:

    PGuideFocusView *focusView = [PGuideFocusView guideFocusView];
    [self.navigationController.view addSubview:focusView];
    [focusView mas_makeConstraints:^(MASConstraintMaker *make) {
        make.edges.equalTo(focusView.superview);
    }];
    

    2.获取需要高亮的cell及cell的frame,我这里需要高亮的是,页面可见cell的第二个:

    NSArray *cells = _tableView.visibleCells;
    NSIndexPath *indexPath = [_tableView indexPathForCell:cells[1]];
    CGRect frame = ((UITableViewCell*)cells[1]).frame;
    

    3.创建一个一模一样的cell,添加到蒙版上:

    MessageSystemCell *cell = [[MessageSystemCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:ID];           
    CGRect frame2 = [_tableView convertRect:frame toView:focusView];
    cell.frame = frame2;
    [focusView addSubview:cell];
    //这一句很重要,一定要将cell及contentView都设置为透明,才能显示下面的蒙版颜色
    cell.contentView.backgroundColor = [UIColor clearColor];
    

    就在完成这个需求,在回家的路上,发现了这个:

    快点阅读新手引导

    和我们长得一模一样~~~~

    下一步计划是,逆向一下,看看人家是怎么实现的。有结论了,过来更新。

    多日以后得更新------------------

    通过下载越狱版本的快点阅读,再用reveal查看结构,发现他们的对话界面竟然是用wkwebview实现的,也就是说,他们用h5来实现的。包括我们上面说的,高亮气泡都是h5。当然怎么用h5来实现这个功能,我就不追究了,没兴趣。

    相关文章

      网友评论

          本文标题:高亮对话气泡思路

          本文链接:https://www.haomeiwen.com/subject/plmvxftx.html