菜单

跻身看一下动图秒懂注册免费送38元体验金

2019年3月1日 - 注册免费送38元体验金

前言

鉴于公司项目做的新闻资源音信,必然少不了对于无新闻内容的展现和对于无网络时的来得
举个例子:当加载消息详情页时处于贰个无网络状态时,我们就须求对其展开始展览示无互连网图片,好了,须求驾驭了

来张gif图弹指间知道

运用中示例.gif

不墨迹,直接贴github,希望各路大神来喷

打开传送门:

WyhShowEmpty

先来张demo展示图

demo示例.gif

思路

率先肯定应该能到位全局对于ViewController拓展无互联网/无内容呈现,那么索性直接对UIViewController添加方法
(体系)

扶助若呈现无内容时,应需求针对数据源开始展览判定显示,例如当数据源为空时,即展示无内容,那么方法参数里起码应该包涵数据源个数信息

其次便是不分互相,任人发挥的自定义样式标题了,这么些不做过多解释

专注大神能够活动了,以下是很基础的诠释表明,耐心的就多看一会呢,帮忙一下

有着文件

类建的就算多,但本人觉着不可能少,为了现在好爱护,能够多扩张部分功效,全体框架不可能变,队形无法散

UIViewController+WyhShowEmpty为基点文件,处理布局和逻辑判断,说到布局,就必要运用一些最基础的<objc-runtime>编写制定在品种中添加属性

Style文件是单独抽出来的类,
用于拍卖全体子控件的样式,那也是最合情合理的一些,那样就完结了对于样式的抽离,在宗旨文件是依照样式举行分红init

别的类不做过多解释了,代码我们下载去看吗

使用中实际上调用代码示例:

-(void)loadNetWork{

    [[AFHTTPSessionManager manager] POST:url parameters:body progress:nil success:^(NSURLSessionDataTask * _Nonnull task, id  _Nullable responseObject) {
        if ([responseObject[@"code"] isEqualToNumber:@0]) {

            dispatch_async(dispatch_get_main_queue(), ^{
            [self.tableView reloadData];
            //成功回调里添加
            [self wyh_showEmptyMsg:@"很抱歉暂无更新" dataCount:self.dataSource];
            });
        }
    } failure:^(NSURLSessionDataTask * _Nullable task, NSError * _Nonnull error) {
        //失败回调里添加
        [self wyh_showEmptyMsg:@"网络不给力,点击刷新" dataCount:0 isHasBtn:YES Handler:^{
            [self loadNetWork];
        }];
    }];

}

修补内容如下

扩大对于UIView的品类,并使其变为底层达成,ViewController是针对UIView的封装

修补了在移除empty后如故有点击事件的bug

修补了在区别尺寸的View上还照旧显得荧屏大小的empty的bug

喜欢的github帮点个star注册免费送38元体验金, ,援助一下,谢谢各位

相关文章

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图