首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >AsyncDisplayKit图像显示闪烁

AsyncDisplayKit图像显示闪烁
EN

Stack Overflow用户
提问于 2016-02-24 14:21:04
回答 1查看 510关注 0票数 0

我试图把facebook的AsyncDisplayKit和DMLazyScrollView结合起来。当移动到下一个/上一个图像时,查看如下所示的闪烁:

如果没有AsyncDisplayKit,这个问题就不会发生。

下面是代码中负责获取图像的部分:

代码语言:javascript
复制
- (UIViewController *) controllerAtIndex:(NSInteger) index {
    if (index > viewControllerArray.count || index < 0) return nil;
    id res = [viewControllerArray objectAtIndex:index];
    if (res == [NSNull null]) {
        UIViewController *contr = [[UIViewController alloc] init];

dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
            ASNetworkImageNode *_mediaNode = [[ASNetworkImageNode alloc] init];
            _mediaNode.backgroundColor = ASDisplayNodeDefaultPlaceholderColor();
            _mediaNode.URL = [NSURL URLWithString:[imagesUrl objectAtIndex:index]];
            _mediaNode.frame = contr.view.bounds;

            dispatch_async(dispatch_get_main_queue(), ^{
                [contr.view addSubview:_mediaNode.view];
            });
        });
        [viewControllerArray replaceObjectAtIndex:index withObject:contr];
        return contr;
    }
    return res;
}

很高兴知道是否有人解决了这个问题。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-05-08 21:04:14

我们来吧,这是它闪现的原因:

在将应用程序转换为使用AsyncDisplayKit时,一个常见的错误是将节点直接添加到现有的视图层次结构中。这样做实际上可以保证您的节点在呈现时闪现。

异步显示工具包文档

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35604682

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档