美文网首页iOS 笔记OC-开发案例收集
使用DZNEmptyDataSet遇到的一个问题

使用DZNEmptyDataSet遇到的一个问题

作者: Dayon | 来源:发表于2019-11-01 15:12 被阅读0次

    今天在使用DZNEmptyDataSet遇到了一个问题,就是我用Refresh 后DZNEmptyDataSet View的整个背景尺寸不对。

    简单的说问题是:刷新后DZNEmptyDataSetView 还会向上偏移一段距离!

    尝试各种刷新都没有用

    使用 Debug views查看结构


    image.png

    打印得到
    <DZNEmptyDataSetView: 0x11c7064a0; frame = (0 -54; 414 575); clipsToBounds = YES; autoresize = W+H; gestureRecognizers = <NSArray: 0x2838cd050>; layer = <CALayer: 0x283639ec0>>

    重点是 frame = (0 -54; 414 575); 因为正常下是这样的
    <DZNEmptyDataSetView: 0x7ffaae347dc0;
    frame = (0 0; 414 575);
    差了54的高度

    换一种说法就是如何在refresh 之后,保持其origin不变化,或者说是什么原因导致其origin 变化啦。

    然后我一搜 54 ,发现54出现地方并不多,结合刷新猜测应该就是它啦

    const CGFloat MJRefreshHeaderHeight = 54.0;
    

    所以推测,DZNEmptyDataSetView是根据正在刷新的过程中给其定布局的。然而我们需要阻止它或延后它。

    划重点:解决方法来了!!!

    - (void)emptyDataSetWillAppear:(UIScrollView *)scrollView {
        scrollView.contentOffset = CGPointZero;
    }
    

    完美解决!!!

    相关文章

      网友评论

        本文标题:使用DZNEmptyDataSet遇到的一个问题

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