使用DZNEmptyDataSet遇到的一個問題

今天在使用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 ,發(fā)現(xiàn)54出現(xiàn)地方并不多,結合刷新猜測應該就是它啦

const CGFloat MJRefreshHeaderHeight = 54.0;

所以推測,DZNEmptyDataSetView是根據(jù)正在刷新的過程中給其定布局的。然而我們需要阻止它或延后它。

劃重點:解決方法來了?。?!

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

完美解決?。。?/h1>

?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容