ios根据文本自适应 然后 搭建类似如下效果
UIView * headView = [[UIView alloc]initWithFrame:CGRectMake(0, 0, self.tbSecond.size.width, 0)];
headView.backgroundColor = [UIColor whiteColor];
UIView * view = [[UIView alloc]initWithFrame:CGRectMake(30, 40, self.tbSecond.bounds.size.width - 90, 0)];
view.layer.borderWidth = 1;
view.layer.borderColor = [UIColor orangeColor].CGColor;
view.backgroundColor = [UIColor whiteColor];
UILabel * contentLabel = [[UILabel alloc]initWithFrame:CGRectMake(15, 30, self.tbSecond.bounds.size.width - 120, 0)];
contentLabel.numberOfLines = 0;
contentLabel.lineBreakMode = NSLineBreakByCharWrapping;
contentLabel.font = [UIFont systemFontOfSize:12];
contentLabel.textColor = [UIColor redColor];
contentLabel.text = visitModel.record?visitModel.record:@"";
CGSize textSize1 = [visitModel.record boundingRectWithSize:view.bounds.size options:NSStringDrawingUsesLineFragmentOrigin |NSStringDrawingTruncatesLastVisibleLine attributes:nil context:nil].size;
NSLog(@"%f",textSize1.height);
CGRect rect = contentLabel.frame;
rect.size.height = textSize1.height+30;
contentLabel.frame = rect;
[view addSubview:contentLabel];
view.height = rect.size.height + 45;
[headView addSubview:view];
headView.height = rect.size.height + 105;
UIView * showView = [[UIView alloc]initWithFrame:CGRectMake(view.center.x-40, 20, 120, 40)];
showView.backgroundColor = [UIColor whiteColor];
UIImageView * headIV = [[UIImageView alloc]initWithFrame:CGRectMake(0, 0, 40, 40)];
headIV.image = [UIImage imageNamed:@"home_circle_icon"];
[showView addSubview:headIV];
UIImageView * headIMV = [[UIImageView alloc]initWithFrame:CGRectMake(10, 10, 30, 30)];
headIMV.layer.cornerRadius = 15;
headIMV.layer.masksToBounds = YES;
[headIMV sd_setImageWithURL:[NSURL URLWithString:visitModel.headPicUrl] placeholderImage:[UIImage imageNamed:@"home_headpic"]];
[showView addSubview:headIMV];
UIImageView * lianxiwo = [[UIImageView alloc]initWithFrame:CGRectMake(50, 7, 25, 25)];
lianxiwo.image = [UIImage imageNamed:@"lianxiwo"];
[showView addSubview:lianxiwo];
UIImageView * dianhua = [[UIImageView alloc]initWithFrame:CGRectMake(90, 7, 25, 25)];
dianhua.image = [UIImage imageNamed:@"dianhua"];
[showView addSubview:dianhua];
UIButton * lianxiwoBtn = [[UIButton alloc]initWithFrame:CGRectMake(45, 2, 35, 35)];
[lianxiwoBtn addTarget:self action:@selector(lianxiwoBtnClick) forControlEvents:UIControlEventTouchUpInside];
[showView addSubview:lianxiwoBtn];
UIButton * dianhuaBtn = [[UIButton alloc]initWithFrame:CGRectMake(80, 2, 35, 35)];
[dianhuaBtn addTarget:self action:@selector(dianhuaBtnClick) forControlEvents:UIControlEventTouchUpInside];
[showView addSubview:dianhuaBtn];
[headView addSubview:showView];
UILabel * companyLabel = [[UILabel alloc]initWithFrame:CGRectMake(view.center.x-60, headView.height-30, 120, 20)];
companyLabel.backgroundColor = [UIColor whiteColor];
companyLabel.textAlignment = NSTextAlignmentCenter;
companyLabel.font = [UIFont systemFontOfSize:14];
companyLabel.textColor = [UIColor orangeColor];
companyLabel.text = visitModel.userName?visitModel.userName:@"";
[headView addSubview:companyLabel];
UILabel * timeLabel = [[UILabel alloc]initWithFrame:CGRectMake(self.tbSecond.bounds.size.width-60, headView.height-35, 60, 20)];
timeLabel.textAlignment = NSTextAlignmentCenter;
timeLabel.font = [UIFont systemFontOfSize:12];
timeLabel.textColor = mRGBToColor(0x999999);
timeLabel.text = visitModel.time?visitModel.time:@"";
[headView addSubview:timeLabel];
[self.view addSubview:headView];

也可以 把上述的 写成 tableView的headView
结合tableView实现如下效果

ios根据文本自适应 然后 搭建类似如下效果的更多相关文章
- iOS UILabel UITextView自适应文本,或文本大小自适应
//UILabel自适应文本的高度 UILabel *label = [[UILabel alloc]initWithFrame:CGRectMake(, , , )]; label.numberOf ...
- ios之UILabel实现文本自适应方法
UILabel实现文本自适应方法(ios7) - (void)initUserInterface { UILabel *label = [[UILabel alloc]init]; label.num ...
- iOS - 富文本AttributedString
最近项目中用到了图文混排,所以就研究了一下iOS中的富文本,打算把研究的结果分享一下,也是对自己学习的一个总结. 在iOS中或者Mac OS X中怎样才能将一个字符串绘制到屏幕上呢? ...
- iOS富文本组件的实现—DTCoreText源码解析 数据篇
本文转载 http://blog.cnbang.net/tech/2630/ DTCoreText是个开源的iOS富文本组件,它可以解析HTML与CSS最终用CoreText绘制出来,通常用于在一些需 ...
- iOS 从0到1搭建高可用App框架
iOS 从0到1搭建高可用App框架 最近在搭建新项目的iOS框架,一直在思考如何才能搭建出高可用App框架,能否避免后期因为代码质量问题的重构.以前接手过许多“烂代码”,架构松散,底层混乱,缺少规范 ...
- iOS 检测文本中的 URL、电话号码等信息
iOS 检测文本中的 URL.电话号码等信息 要检测文本中的 URL.电话号码等,除了用正则表达式,还可以用 NSDataDetector. 用 NSTextCheckingResult.Checki ...
- appium ios真机自动化环境搭建&运行(送源码)
appium ios真机自动化环境搭建&运行(送源码) 原创: f i n 测试开发社区 6天前 Appium测试环境的搭建相对比较烦琐,不少初学者在此走过不少弯路 首先是熟悉Mac的使用 ...
- appium ios真机自动化环境搭建&运行(送源码)
appium ios真机自动化环境搭建&运行(送源码) 原创: f i n 测试开发社区 6天前 Appium测试环境的搭建相对比较烦琐,不少初学者在此走过不少弯路 首先是熟悉Mac的使用 ...
- 实现js的类似alert效果的函数
这个简单的类似alert的函数,效果还行,至于css样式,那没的说了,笔者确实尽力了,如果读者觉得太烂,你可以随便改函数的样式的,反正,笔者觉得还可以,呵呵. <!DOCTYPE html PU ...
随机推荐
- CodeForces 645B Mischievous Mess Makers
简单题. 第一次交换$1$和$n$,第二次交换$2$和$n-1$,第三次交换$3$和$n-2$.....计算一下就可以了. #pragma comment(linker, "/STACK:1 ...
- python绝技 — 搜寻蓝牙设备
需要安装蓝牙模块:pybluez sudo pip install pybluez 代码 #!/usr/bin/env python #--*--coding=utf-8--*-- #P191 #su ...
- Sipdroid实现SIP(二): 呼叫请求
INVITE 许多介绍sip的文章没有介绍以下几点细节: 重传, Timer A, B Transaction的有限状态机, 记录当前Transactin的进展情况 与INVITE消息相关的行为(Cl ...
- C语言课程设计 Win32应用程序
问题描述: 请设计一个职工信息管理程序,以方便人事部门对本单位职工的管理,该程序应该具有以下功 能: (1)能从键盘输入职工的信息 . (2)给定职工号,显示职工的信息. (3)给定工作部门,显示该部 ...
- 国内首家MR头显公司于CES惊艳亮相
在刚刚过去的CES2017大会上,我们看到了许多较为优秀的VR产品,而在这里面,有一家名不见经传的中国公司易瞳发布了一款兼具VR和AR功能的头显VMG-MARK.它的外观与联想VR和骁龙VR820等产 ...
- 给Unity3d添加一个漂亮的标题栏
我们在做好一个小Unity3d APP,我们一般都会兴致勃勃的导出一个exe,尝试着玩我们的app.感觉还不错,有板有眼的了.然而事与愿违,我们APP里面的内容挺漂亮的,但是它的标题栏是windows ...
- 【 Note 】GDB调试
GDB是在linux下的调试功能 命令: 启动文件: 普通调试 gdb 可执行文件 分屏调试 gdb -tui 可执行文件 ->调试: 运行 r 设置断点 b 删除断点 delete 断点编号 ...
- CodeForces 670D Magic Powder
二分. 二分一下答案,然后验证一下. #pragma comment(linker, "/STACK:1024000000,1024000000") #include<cst ...
- 《HTML5权威指南》
<HTML5权威指南> HTML元素: html字符实体 html全局属性 html base标签 用元数据元素说明文档 标记文字(第八章) 标记文字.组织内容.文档分节 表格元素 表单元 ...
- js作用域详解
// 作用域:(1)域:空间.范围.区域…… (2) 作用:读.写 script 全局变量.全局函数 自上而下 函数 由里到外 浏览器: “JS解析器” 1)“找一些东西” :var func ...