关于MJRefresh上拉加载后仍能看到提示的解决办法

来源:互联网 发布:地毯胶如何清除 知乎 编辑:程序博客网 时间:2024/06/18 03:28

直接上代码是一个类别,主要是MJRefresh在创建的时候为了显示提示将ContentInsert设置为了44。如果要在加载调用endRefresh这个方法后隐藏就需要将这个重新设置为了不影响第三方的代码内容所以给MJRefreshComponent添加一个类别并实现以下两个方法即可!

- (void)endRefreshing{

    self.state =MJRefreshStateIdle;

    [UIViewanimateWithDuration:0.5animations:^{

        [self.scrollViewsetMj_insetB:0];

    }];

}

- (void)beginRefreshing{

    [UIViewanimateWithDuration:MJRefreshFastAnimationDurationanimations:^{

        self.alpha =1.0;

    }];

    self.pullingPercent =1.0;

    // 只要正在刷新,就完全显示

    if (self.window) {

        self.state =MJRefreshStateRefreshing;

    } else {

        // 预防正在刷新中时,调用本方法使得header inset回置失败

        if (self.state != MJRefreshStateRefreshing) {

            self.state =MJRefreshStateWillRefresh;

            // 刷新(预防从另一个控制器回到这个控制器的情况,回来要重新刷新一下)

            [self setNeedsDisplay];

        }

    }

    [self.scrollViewsetMj_insetB:44];

}


阅读全文
0 0
原创粉丝点击