在tableview没有数据的时候,我们经常需要在tableview的正中间插入一张图片,来提示用户暂无数据

/**
* 添加一个view,提示暂无数据
*/
- (void)addPromptView
{
UIView* promptView = [[UIView alloc] initWithFrame:CGRectMake(, , [UIScreen mainScreen].bounds.size.width, )];
UIImageView* promptImageView = [[UIImageView alloc] init];
CGFloat promptImageViewW = ;
CGFloat promptImageViewX = (promptView.frame.size.width - promptImageViewW) / ;
CGFloat promptImageViewY = ;
CGFloat promptImageViewH = ;
CGRect promptF = CGRectMake(promptImageViewX, promptImageViewY, promptImageViewW, promptImageViewH);
promptImageView.frame = promptF;
promptImageView.image = [UIImage imageNamed:@"暂无数据.png"];
promptImageView.contentMode = UIViewContentModeScaleAspectFit;
promptView.center = self.view.center;
[promptView addSubview:promptImageView];
self.promptView = promptView;
self.promptView.hidden = YES;
[self.tableView addSubview:self.promptView];

//添加约束,使promptView保持在tableview的正中间
[promptView setTranslatesAutoresizingMaskIntoConstraints:NO];
[self.tableView addConstraint:[NSLayoutConstraint constraintWithItem:promptView attribute:NSLayoutAttributeCenterX relatedBy:NSLayoutRelationEqual toItem:self.tableView attribute:NSLayoutAttributeCenterX multiplier:1.0f constant:0.0f]];
[self.tableView addConstraint:[NSLayoutConstraint constraintWithItem:promptView attribute:NSLayoutAttributeCenterY relatedBy:NSLayoutRelationEqual toItem:self.tableView attribute:NSLayoutAttributeCenterY multiplier:1.0f constant:0.0f]];
[self.tableView addConstraint:[NSLayoutConstraint constraintWithItem:promptView attribute:NSLayoutAttributeWidth relatedBy:NSLayoutRelationEqual toItem:nil attribute:NSLayoutAttributeNotAnAttribute multiplier:0.0f constant:[UIScreen mainScreen].bounds.size.width]];
[self.tableView addConstraint:[NSLayoutConstraint constraintWithItem:promptView attribute:NSLayoutAttributeHeight relatedBy:NSLayoutRelationEqual toItem:nil attribute:NSLayoutAttributeNotAnAttribute multiplier:0.0f constant:150.0f]]; }

使用约束给tableview添加暂无数据的提示的更多相关文章

  1. Swift - 给表格TableView添加页眉和页脚

    UITableView具有var tableHeaderView:UIView?属性和var tableFooterView:UIView?属性,可以通过给其赋值来创建列表TableView的页眉和页 ...

  2. Repeater 控件 当数据源没有数据的时候显示 暂无数据 的两种方式

    第一种:现在前台给Repeater控件外面的div加一个runat=”server”  然后在cs后台判断数据源是否为空, 是的话就修改这个前台div的InnerText或者是InnerHtml 即可 ...

  3. easyUI datagrid表格添加“暂无记录”显示

    扩展grid的onAfterRender事件 var myview = $.extend({}, $.fn.datagrid.defaults.view, {     onAfterRender: f ...

  4. element table 先显示暂无数据 之后再加载数据 问题

    项目中的表格请求数据时,进去页面,先出现 ''暂无数据'' 字样闪现一下之后在进行加载数据,用户体验十分不好 解决办法: <template> <el-table :data=&qu ...

  5. 使用Vue封装暂无数据占位图组件

    1. 前言 在日常开发中,页面上肯定有展示数据的需求,但是当某些时候该展示数据的地方此时数据为空时,就会留下一片空白,对用户体验不是很好,那么接下来我们就封装一个空数据时的占位展示图,告诉用户此时用户 ...

  6. element el-tree、el-table组件加载数据前闪现 暂无数据 清除

    相信很多人在使用element  el-tree.el-table组件加载数据前会显示一个" 暂无数据 ",体验很不友好,有没有办法处理不显示呢?答案是:有的.废话不多说直接上代码 ...

  7. iOS开发小技巧--tableView中实现无数据无分割线,有数据才有分割线

    通过通讯录练习GET的技能

  8. ios见习之-UISearchbar+tableview实现自动搜索自带提示

    当做搜索时常常希望能在输入的时候出现搜索关键字,如下效果

  9. 添加xml文件编辑语法提示

    找到Struts的lib目录 找到struts2-core-文件并解压开 这个struts.dtd文件才是我们需要添加的文件 双击XML Catalog 点击ADD Key中复制粘贴D:\web\st ...

随机推荐

  1. idea修改文件名后出现main method should be static错误

    1.确保你有main方法 2.别忘了main方法里还有参数: String[] args

  2. Java 初始化的个人理解

    先说明一下由来吧,下面是同学的一道笔试题,以前感觉对java初始化也是了解一二的,结果,看到这题泪奔了,不会...上网查,自己添加println,总算是能把自己讲明吧了,不知理解的对不对,先记录下吧, ...

  3. BlueTooth的EDR是什么

    EDR 即Enhanced data rate,是蓝牙技术中增强速率的缩写,其特色是大大提高了蓝牙技术的数据传输速率,达到了2.1Mbps ,是目前蓝牙技术的三倍.因此除了可获得更稳定的音频流传送的更 ...

  4. android网络通讯数据封装之 json

    Demo程序包括客户端和服务端 客户端按json数据格式封装数据传至服务端. 服务端为简单的servlet程序,负责接收客户端传到json数据,然后按原数据返回客户端. 实例代码如下: public ...

  5. flume 日志采集工具

    Flume是Cloudera提供的一个高可用的,高可靠的,分布式的海量日志采集.聚合和传输的系统,Flume支持在日志系统中定制各类数据发送方,用于收集数据:同时,Flume提供对数据进行简单处理,并 ...

  6. eclipse 插件安装

    203.208.46.146 www.google.com203.208.46.146 dl.google.com203.208.46.146 dl-ssl.google.com

  7. Optipng—PNG的优化图像工具初探

    PNG 即 Portable Network Graphic 的简称,PNG 图像是一种无损压缩图像文件格式.因为网络传输的需要,我们总是希望 PNG 图像的容量能够小些.小些.再小些.要优化 PNG ...

  8. Ordering Tasks(拓扑排序+dfs)

    Ordering Tasks John has n tasks to do. Unfortunately, the tasks are not independent and the executio ...

  9. windows下搭建apache+php+mysql

    在windows下,apache和mysql都有自动化安装的程序,本篇则侧重从apache和php版本选择,php线程安全,apache和mysql安装启动服务,工作环境配置这几个方面来阐述windo ...

  10. Javascript数组的声明

    var cars=new Array(); cars[0]="Audi"; cars[1]="BMW"; cars[2]="Volvo"; ...