iOS-限制UILabel宽度自适应的最大宽度

前言

一个需求,要求UILabel宽度自适应到指定宽的时候然后限制其宽度,不再需要宽度自适应
, 并且需要UILabel后面的控件紧跟其后,如下图

好的.直接进入正题

UIlabel有一个属性叫preferredMaxLayoutWidth,官方解释是:

  • // Support for constraint-based layout (auto layout)
  • // If nonzero, this is used when determining -intrinsicContentSize for multiline labels
  • //支持基于约束的布局(自动布局)
  • //如果非零,则在为多行标签确定-intrinsicContentSize时使用此方法

所以我们需要设置preferredMaxLayoutWidth = 指定宽,但是这样并不会生效,因为UIlabel默认不换行,这个属性需要UILabel设置换行才可以生效,但是我们又需要限制在一行显示,并且不换行

所以需要设置UIlabel的numberOfLines = 0,并限制UIlabel的高度,这样既不会换行,又限制了最大宽度

self.name_lab.preferredMaxLayoutWidth = 170 * kScaleWidth;
self.name_lab.numberOfLines = 0;
self.name_lab.height = 20;

原文地址:https://www.cnblogs.com/kxzhangl/p/10802444.html

时间: 2024-09-28 17:03:42

iOS-限制UILabel宽度自适应的最大宽度的相关文章

CSS-父元素宽度自适应子元素宽度之和

最近碰见这样一个需求,要让图片横向排列设置x方向的滚动条滚动查看,原本当直接创建一个IFC(inline,float什么的)就解决了,搞了半天发现搞不定(IFC也是不能父元素宽度自适应子元素宽度之和的,因为会换行..),最后用flex解决了(然后又发现使用table也是可以的),然后学了两个新名词GFC和FFC..这里就说一下我的解决方法,给大家抛个砖. flex <style> /*1. 最外层容器 width: 200px; overflow-x: scroll; */ .img-view

iOS开发 UILabel实现自适应高宽

UILabel是iOS开发常用的控件.UILabel的属性需要了解,UILabel的特殊显示效果也需要我们掌握.UILabel自适应高宽度是很多初学者遇到的技术性难题.比如段文字,要让他完全地分行显示且要让后面的控件不被遮挡.这需要我们的UILabel能够自适应高宽,以便完全显示text的内容,后面的控件可以获取UILabel的起始坐标和宽高来重新设置frame来达到紧贴着UILabel显示而不被遮挡. 工具/原料 Mac OS X操作系统::OS X 10.11.5 编译环境:Xcode 7.

CSS自适应布局(包括两边宽度固定中间宽度自适应与中间宽度固定两边宽度自适应)

1.两边宽度固定,中间宽度自适应 (1)非CSS3布局,浮动定位都可以(以下用浮动) css样式: #left { float: left;width: 200px; background: lime;} #right { float: right; width: 200px; background: lime;} #center { margin:0 200px; background: blue} html: <div id="left">left</div>

css实现左侧宽度自适应,右侧宽度固定

<div id="wrap"> <div id="sidebar" style="height:240px;">固定宽度区</div> <div id="content" style="height:340px;">自适应区</div> </div> <div id="footer">后面的一个DIV,以

IOS UIWebView截获html并修改便签内容,宽度自适应

需求:混合应用UIWebView打开html后,UIWebView有左右滚动条,要去掉左右滚动效果:  方法:通过js截获UIWebView中的html,然后修改html标签内容:  实例代码:  服务器端html Java代码   <html><head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <meta name="

iOS--SDAutolayout宽度自适应

#pragma mark - UIScrollView 内容竖向自适应.内容横向自适应方法 @interface UIScrollView (SDAutoContentSize) /** 设置scrollview内容竖向自适应 */ - (void)setupAutoContentSizeWithBottomView:(UIView *)bottomView bottomMargin:(CGFloat)bottomMargin; /** 设置scrollview内容横向自适应 */ - (voi

抛砖引玉之宽度自适应布局

抛砖引玉之宽度自适应布局 什么是宽度自适应布局呢? 就是当浏览器窗口大小改变时,浏览器里的元素宽度也随之改变,从而达到自适应布局. 常见的宽度自适应布局有: 1.  两列:左边宽度不变,右边宽度自适应 2.  三列:左右两边宽度不变,中间部分自适应 3.  三列:左右两边宽度自适应,中间部分不变 一.利用div+css实现以上“自适应布局” (1)两列:左边宽度固定,右边宽度自适应 利用div+float+margin,已在随笔‘float剖析’中讲解,具体代码和效果图见下: <!DOCTYPE

记一道css面试题 : 三栏布局两边宽度固定,中间宽度自适应,并且布局随屏幕大小改变。

前几天面试时有道css题没做出来,回来好好学习一番后把其记录下来. 题目是这样的:左中右三栏布局,左右两栏宽度固定,左右两栏的宽度为200像素,中间栏宽度自适应.当屏幕小于600px时,3栏会分别占用一行.像这样 当屏幕大于600px时,是这样 我做出来用了css3的@media,如果不用这个,好吧,水平有限想不出来... 下面是代码: <!DOCTYPE> <html> <head> <style> body{ margin: 0 ; padding: 0

左右两栏宽度自适应,中间一栏宽度固定

左右两栏宽度自适应,中间一栏宽度固定:中间一栏宽度固定,左右两栏宽度自适应效果在众多网页中都有应用,有不错的使用效果,下面就简单介绍一下如何此效果:代码实例如下: <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name="author" content="http://www.51texiao.cn/" /> <