ios xib 初始化高度_基于 xib 开发自适应高度 view
基于 xib 开发自适应高度 view
虽然 xib 和 storyboard 不那么受待见,但我依旧喜欢。
自定义 view
说明:
title Label 约束 -> top:0 bottom:0 left:15
indicator Label 约束 -> top:5 bottom:5 right:34
title Label 和 indicator Label 相对约束 -> 水平间距 >= 5
indicator Label 设置 -> numberOfLines = 0
效果
笔记
使用自适应,也就是不确定约束,多个自适应控件之间不应该出现确定的约束(明确规定 rect 的约束)。
比如: 上面 title Label 和 indicator Label 都使用了自适应(title Label 没有确定宽度或者右边距,indicator Label 没有确定宽度或者左边距),如果这时设置这两个 label 的水平间距为一个确定的值(两个 label 在 xib 上的当前间距除外),约束就会自相矛盾。
核心代码
// 初始化
- (CHDisclosureIndicatorView *) diView {
if (_diView == nil) {
_diView = [[[UINib nibWithNibName:@"CHDisclosureIndicatorView" bundle:nil] instantiateWithOwner:nil options:nil] lastObject];
_diView.layer.cornerRadius = 5;
_diView.delegate = self;
_diView.title = @"默默";
_diView.indicator = nil;
}
return _diView;
}
// 设置约束
[self.diView mas_makeConstraints:^(MASConstraintMaker *make) {
make.top.equalTo(self.topView.mas_bottom).offset(10);
make.left.mas_equalTo(15);
make.right.mas_equalTo(-15);
make.height.mas_greaterThanOrEqualTo(50); // important
}];
完整 demo
ios xib 初始化高度_基于 xib 开发自适应高度 view相关推荐
- 查看gpio状态_基于Arduino开发,借助blinker平台,让NodeMCU实现8路继电器APP端状态监视和控制...
基于Arduino开发,借助blinker物联网平台,让NodeMCU实现8路继电器APP端状态监视和控制 先上开发板功能图: 本文利用了NodeMCU上的D0-D3,D5-D9,总共 8个 GPIO ...
- request[limit]取不到前台的值_基于uFUN开发板的心率计(二)动态阈值算法获取心率值...
前言 上一篇文章:基于uFUN开发板的心率计(一)DMA方式获取传感器数据,介绍了如何获取PulseSensor心率传感器的电压值,并对硬件电路进行了计算分析.心率计,重要的是要获取到心率值,本篇文章 ...
- arduino编码器计数_基于Arduino开发环境的光电编码器检测仪设计方案 - 全文
0 引言 Arduino是一款基于单片机系统的电子产品开发平台,它的软硬件系统都具有高度的模块化,而且软件系统是完全开源的.其硬件系统也是高度模块化的,在核心控制板的外围有开关量输入/输出模块.各种模 ...
- vue.js反编译_基于electron-vue开发的微信小程序反编译客户端
开源一个小程序反编译客户端 咨询小程序反编译的同学比较多,虽然有开源库但是还是有同学不清楚如何去操作,所以索性做了一个客户端方便进行小程序的反编译 # 技术选型 网上已经有大佬实现了C#版的反编译工具 ...
- java电信计费项目论文_基于JAVA开发的电信IP计费系统设计毕业论文
基于JAVA开发的电信IP计费系统设计毕业论文 本科毕业设计(论文)基于 JAVA 开发的电信 IP 计费系统毕业设计(论文)任务书学院:信息科学与工程学院 系级教学单位:电子与通信工程学号学生姓名专 ...
- .net vue漂亮登录界面_基于 electron-vue 开发的音乐播放器「实践」
作者:XiaoTuGou 转发链接:https://github.com/SmallRuralDog 前言 基于 electron-vue 开发的音乐播放器,界面模仿QQ音乐. 技术栈electron ...
- java 快递项目_基于SpringBoot开发的Java快递代拿系统
该项目基于 [基于SSM开发的Java快递代拿系统] 项目全面升级,使用当前最为流行的 SpringBoot 框架,相关技术栈全面更新!是您深入学习 SpringBoot 开发的最佳实践! 相关技术栈 ...
- java医院挂号代码_基于SSM开发的Java医院预约挂号系统 源码下载
这是一个基于SSM开发的Java医院预约挂号系统,源码中附带主工程以及数据库文件. 目前已知Bug:因为时间预约信息是假数据,控制预约日历显示的代码在data/index.js,因为js写的有点bug ...
- labview虚拟心电监测系统_基于LabVIEW开发的心电实时信号采集系统
基于 LabVIEW 开发的心电实时信号采集系统 史锡腾 ; 江迅 ; 龚贤伟 [期刊名称] <医疗卫生装备> [年 ( 卷 ), 期] 2007(028)006 [摘要] 介绍了以 La ...
最新文章
- Windows下使用Notepad++修改二进制文件,exe可执行文件
- 操作系统服务:logging日志记录模块
- DeepLearning.AI第一部分第三周、 浅层神经网络(Shallow neural networks)
- 表面上在帮女朋友拍照,其实镜头瞄准的是......
- mysql字段唯一确定_验证表里某不确定的字段的值是否唯一的方法?
- 理解OAuth 2.0(转)
- python 扫描仪_玩《Minecraft我的世界》学python编程,可领|取电子学习版本
- C++ 之父即将开始直播,请就位!
- js书写原生ajax,JS 原生ajax写法
- Pspice轨迹命令
- pdo mysql 函数_PDO函数属性详解
- php ean13,php生成EAN_13标准条形码实例
- 微信游戏奇迹暖暖选取服务器失败,奇迹暖暖微信登录授权失败
- 经典工作自我鉴定范文/实习自我鉴定表
- 二手新能源车数据爬虫(人人车,第一手车,二手车之家)
- 【已解决】IDEA创建Maven多模块项目子模块引用不到父模块的pom
- 解析Sers微服务-NetCore之HelloWorld
- 看历史涨知识!高速公路知多少?
- 基于vue的tiptap编辑器插件(二)
- 关于引起stop:c000021a unknown hard error部分问题及解决。