//行的高度。
-(CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath{
NewNotificationCell *cell = (NewNotificationCell *)[self tableView:tableView cellForRowAtIndexPath:indexPath];
cell.myLabel.text = [self.dataArray objectAtIndex:indexPath.row];
labelSize = [cell.myLabel.text sizeWithFont:[UIFont fontWithName:@"Arial" size:] constrainedToSize:CGSizeMake(cell.myLabel.frame.size.width, ) lineBreakMode:UILineBreakModeWordWrap];
cell.myLabel.lineBreakMode = UILineBreakModeWordWrap;
cell.myLabel.numberOfLines = ;
[cell.myLabel setFont:[UIFont fontWithName:@"Arial" size:]];
cell.myLabel.frame = CGRectMake(, , labelSize.width, labelSize.height); return labelSize.height+;
}
     //自动换行。
cell.myLabel.text = [self.dataArray objectAtIndex:indexPath.row];
labelSize = [cell.myLabel.text sizeWithFont:[UIFont fontWithName:@"Arial" size:] constrainedToSize:CGSizeMake(cell.myLabel.frame.size.width, ) lineBreakMode:UILineBreakModeWordWrap];
cell.myLabel.lineBreakMode = UILineBreakModeWordWrap;
cell.myLabel.numberOfLines = ;
[cell.myLabel setFont:[UIFont fontWithName:@"Arial" size:]];
cell.myLabel.frame = CGRectMake(, , labelSize.width, labelSize.height); //获取文字长度和高度。
CGSize fontSize =[cell.myLabel.text sizeWithFont:cell.myLabel.font
forWidth:cell.myLabel.frame.size.width
lineBreakMode:UILineBreakModeWordWrap];
NSLog(@"文字长度=%f",fontSize.width); //获取UILabel上最后一个字符串的位置。
CGPoint lastPoint;
CGSize sz = [cell.myLabel.text sizeWithFont:cell.myLabel.font constrainedToSize:CGSizeMake(MAXFLOAT, )]; CGSize linesSz = [cell.myLabel.text sizeWithFont:cell.myLabel.font constrainedToSize:CGSizeMake(cell.myLabel.frame.size.width, MAXFLOAT) lineBreakMode:UILineBreakModeWordWrap];
if(sz.width <= linesSz.width) //判断是否折行
{
lastPoint = CGPointMake(cell.myLabel.frame.origin.x + sz.width, cell.myLabel.frame.origin.y);
}
else
{
lastPoint = CGPointMake(cell.myLabel.frame.origin.x + (int)sz.width % (int)linesSz.width,linesSz.height - sz.height);
}
NSLog(@"====%f",lastPoint.x); [cell.myButton setTitle:@"查看" forState:UIControlStateNormal];
[cell.myButton setBackgroundImage:[UIImage imageNamed:@"button.png"] forState:UIControlStateNormal];
if ([cell.myButton.titleLabel.text isEqualToString:@"查看"]) {
cell.myButton.frame = CGRectMake(lastPoint.x+, labelSize.height-, , );
}
[cell.timeButton setTitle:@"今天" forState:UIControlStateNormal];
cell.timeButton.frame = CGRectMake(, labelSize.height+, , );
return cell;
}

获取UILabel上最后一个字符串的位置。获取文字长度和高度,自动换行的更多相关文章

  1. php 判断字符串在另一个字符串中位置

    $email='user@example.com';        //定义字符串$result=strstr($email,'@');         //返回子字符串echo $result; / ...

  2. 20. orcle中统计一个字符串中某个字符的长度

    例子1:统计一个字符串中“,”的个数: select lengthb(regexp_replace('[a,b,c,d,e,f]','[^,]',null))  as res from dual; 例 ...

  3. 获取Sprite上某一个点的透明度

    转载[ http://www.cnblogs.com/Androider123/p/3795050.html] 本篇文章主要讲一下怎么做一个不规则的按钮,比如如下图的八卦,点击绿色和点击红色部分,需要 ...

  4. 【原】cocos2d-x开发笔记:获取Sprite上某一个点的透明度,制作不规则按钮

    本篇文章主要讲一下怎么做一个不规则的按钮,比如如下图的八卦,点击绿色和点击红色部分,需要执行不同的事件

  5. 【vim】跳转到上/下一个修改的位置

    当你编辑一个很大的文件时,经常要做的事是在某处进行修改,然后跳到另外一处.如果你想跳回之前修改的地方,使用命令: Ctrl+o 来回到之前修改的地方 类似的: Ctrl+i 会回退上面的跳动.

  6. 使用jquery获取url上的参数(笔记)

    使用jquery获取url上的参数(笔记) 一.做作业时经常要获取url上的参数 1.当url上有多个参数时 从互联网找到了一个方法 (function ($) { $.getUrlParam = f ...

  7. 【LeetCode】1433. 检查一个字符串是否可以打破另一个字符串 Max Difference You Can Get From Changing an Integer

    作者: 负雪明烛 id: fuxuemingzhu 个人博客:http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 排序 日期 题目地址:https://leetcode ...

  8. HashTable集合和练习题_计算一个字符串中每一个字符出现的次数

    HashTable集合 /** * java.util.Hashtable<K,V>集合 implement Map<K,V>接口 * Hashtable:底层也是一个哈希表, ...

  9. js获取table checkbox选中行的值.mdjs获取table checkbox选中行的

    <!DOCTYPE html> <html> <head> <script src="https://cdn.staticfile.org/jque ...

随机推荐

  1. java的InputStream和InputStreamReader有什么区别??

    解释一: InputStream  此抽象类是表示字节输入流的所有类的超类 InputStreamReader 是字节流通向字符流的桥梁:它使用指定的 charset 读取字节并将其解码为字符.它使用 ...

  2. (原)python中使用plt.show()时显示图像

    转载请注明出处: http://www.cnblogs.com/darkknightzh/p/6039667.html 参考网址: http://matplotlib.org/users/shell. ...

  3. C# ITextSharp pdf 自动打印

    PDF生成后直接进入打印预览不用下载 using iTextSharp.text; using iTextSharp.text.pdf; Document pdfDoc = new Document( ...

  4. js字符串数字计算

    1.字符串转换为数字用 -0 var a=1; var b='2'; var c= a+b;(12) var c=a+(b-0);(3)

  5. 使用ToolRunner运行Hadoop程序基本原理分析

    为了简化命令行方式运行作业,Hadoop自带了一些辅助类.GenericOptionsParser是一个类,用来解释常用的Hadoop命令行选项,并根据需要,为Configuration对象设置相应的 ...

  6. [译]终极塔防——运用HTML5从头创建一个塔防游戏

    翻译共享一篇CodeProject的高星力作,原文地址:http://www.codeproject.com/Articles/737238/Ultimate-Tower-Defense 下载演示项目 ...

  7. android 监听app进入后台以及从后台进入前台

    package com.pinshang.base; import com.pinshang.common.CommonValue; import com.pinshang.investapp.Ent ...

  8. NAS4Free 安装配置(二)系统安装

    NAS4Free系统安装 看一看BIOS设置 开机按DEL进BIOS 改日期时间 这里可以设置RAID,因为ZFS的RAID功能更好,所以我们在这里不配置RAID 制作LiveUSB 用软件(USB ...

  9. ffmpeg编译时freetype2 not found错误

    自己安装的libfreetype2在/usr/local/lib目录下export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH

  10. SVN上传代码时代码失败

    Description : You are not authorized to access the files in the repository.Suggestion : You might be ...