文档章节

概述,默认显示2行,点击展开按钮,显示全部,点击收回,有显示2行(转载)

Lambda8421
 Lambda8421
发布于 2015/03/05 10:57
字数 227
阅读 16
收藏 0

项目中有这样的需求,要显示一本书的概述,默认显示2行,点击展开按钮,显示全部,点击收回,有显示2行。

开始的时候按钮事件中,可能写的是这样一段代码:

if (isExpand) {

        [lblBrief setNumberOfLines:2];

        lblBrief.text = [StringUtil subString:strBrief AndSubLength:90];

        [btnBrief setImage:[UIImage imageNamed:@"detailBriefDown"] forState:UIControlStateNormal];

        [btnBrief setImage:[UIImage imageNamed:@"detailBriefDown"] forState:UIControlStateHighlighted];

    }else{

        [lblBrief setNumberOfLines:0];

        lblBrief.text = strBrief;

        [btnBrief setImage:[UIImage imageNamed:@"detailBriefUp"] forState:UIControlStateNormal];

        [btnBrief setImage:[UIImage imageNamed:@"detailBriefUp"] forState:UIControlStateHighlighted];

    }

可以通过setNumberOfLines:0,来让概述的所以内容显示出来,但如果,不计算所要显示全部内容的总高度,label的宽高是不会自动增大的。

else{

        [lblBrief setNumberOfLines:0];

        lblBrief.text = strBrief;

        CGSize constraint = CGSizeMake(self.view.frame.size.width - (15 * 2), 20000.0f);

        

        CGSize size = [strBrief sizeWithFont:[UIFont systemFontOfSize:10]

        

        [brief setFrame:CGRectMake(15,160,size.width,size.height)];


        [btnBrief setImage:[UIImage imageNamed:@"detailBriefUp"]forState:UIControlStateNormal];

        [btnBrief setImage:[UIImage imageNamed:@"detailBriefUp"]forState:UIControlStateHighlighted];

    }

本文转载自:http://blog.csdn.net/xdrt81y/article/category/1560723

共有 人打赏支持
Lambda8421
粉丝 10
博文 121
码字总数 121640
作品 0
闸北
程序员
实现微信朋友圈动态列表

前言 项目中需要实现类似朋友圈动态的列表,需要用到图文混排,正好可以使用ibireme大神的开源控件YYText实现这种效果,在这里记录一下使用过程中遇到的问题,参考文章iOS 保持界面流畅的技巧...

_誌念
2017/12/01
0
0
Android 通知常见样式小结

一.普通通知 这是最常见通知样式,如下图 默认样式,包括一个标题和一个内容,内容只显示一行 ,多余的内容会以省略号替代。 效果图:(第三行内容在低版本不一定显示) 注意: build内提供了...

肖朝胜
2016/10/12
74
0
iOS10 Log调试小工具

出发点 由于iOS10系统,在发布环境下(打成ipa包安装测试或者发布之后从App Store下载安装的包),使用Xcode已经无法查看我们自己打印的log。所以就做了一个小工具,查看log,便于调试。 楼主...

ljianbing
2017/06/20
0
0
如何在 Remix 环境下进行 Solidity 代码单步调试

1 文章摘要 【本文目标】本文目标是指导如何使用REMIX完成一次智能合约交易调试。 【前置条件】学习过Solidity语言,需要进行调试。 【技术收获】 1). 使用REMIX进行单步调试 2). REMIX的Deb...

yanyan
07/10
0
0
android SearchView

SearchView一个为用户提供输入搜索查询和提交请求给搜索提供者的用户界面部件。显示查询建议或结果列表,如果有的话,运行用户选择一条查询建议或结果并启动与其相关的操作。 内部类   int...

amigos_wu
2012/06/11
0
0

没有更多内容

加载失败,请刷新页面

加载更多

为什么Java大神,都在看Spring Boot和Spring Cloud的书?

如果你是一名Java开发人员,并且最近正打算学习Spring Boot和Spring Cloud框架并寻找一些关于它们的最好的书籍,那么,你今天就来对地方了。 本文,我们将讨论一些学习Spring Boot和Spring ...

Java小铺
18分钟前
6
0
springboot logback日志配置

springboot 如果不使用外部tomcat的话,日志是需要自己配置的,不然的话就只有控制台的日志,但是日志又是我们在项目上了生产环境,出问题时,检查问题的唯一途径,所以我们要配置详细的日志...

曾大大胖
18分钟前
2
0
Linux服务器集体篡改时间的方法

Red Hat 虚拟化课程RH318,中小型公司使用的话,感觉可以匹敌OpenStack。手头上有一个VMware的映像,RHEV 3.5版的,只能把系统时间调整到2016年才能使用。Red Hat的RHEV已经更新到4.1版,不过...

大别阿郎
18分钟前
1
0
Tomcat启动异常:java.lang.ClassNotFoundException

警告: Name = mysqlDataSource Property maxActive is not used in DBCP2, use maxTotal instead. maxTotal default value is 8. You have set value of "100" for "maxActive" property, wh......

hengbao5
20分钟前
1
0
GO错误的一些处理(defer,recover,panic)

package main import("fmt""errors")func main() {num := 10fmt.Printf("num的类型%T, num的值%v, num的地址%v\n", num, num, &num)num2 := new(int) //返回一个指针//num...

汤汤圆圆
29分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部