IOS中自定义cell大小的两种方法

2023-05-16

第一种:自定义cell,不用xib的,用已经封装好的类Category.m类


   第一步: //label的自定义高度,用的是(封装好的方法)————————————————————根据label中的内容自动确定label的高度

                        //这个方法是UILabel分类中的:@implementation UILabel (UILabelCategory),所以只能UILabel对象引用给方法


      [label autolayoutContent :string origin : CGPointMake ( 10 , 10 ) FontFloat : 15 contentWidth : KScreenWidth - 20 ];

    

    [self.contentView addSubview:label];

    

    第二步: //再根据label的位置决定了每个cell的高度

    self.yzHeight = label.yzBottom + 10;


   第三步:在代理方法(tableView:heightForRowAtIndexPath:中最终设置,调用代理中的

-(CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath{ 

    //这个代理才是决定cell高度的关键 (调用代理方法tableView:cellForRowAtIndexPath:返回cell的对象)  

    CommentTableViewCell *cell = (CommentTableViewCell *)[self tableView:tableView cellForRowAtIndexPath:indexPath];

    return cell.yzHeight;

}

第二种:自定义cell,带xib的
     第一步:含有UILabel控件的Lines属性改为0;
        第二步:对xib中的所有控件进行相对约束,并不是全都相对cell本身
        第三步:设置以下两句话即可

            tableView.estimatedRowHeight = 44; //预计高度

            //根据cell中的子视图们的高度,从而确定cell的高度

            tableView.rowHeight = UITableViewAutomaticDimension;//自适应cell高度

    


本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

IOS中自定义cell大小的两种方法 的相关文章

  • 编译 NDK 编译 freerdp 转载:测试成功

    最近著名的开源rdp客户端freerdp的android版本终于出来了 xff0c 经过9个月的跳票终于release了第一版 下面简单说说编译的过程 这个是需要用到cmake来编译 xff0c 所以系统推荐用ubuntu或者mac xff
  • 1.VMWare-Ubuntu-内存不足处理办法 2.VMWare-Ubuntu-扩展内存后黑屏解决办法

    问题描述 xff1a 1 VMWare Ubuntu 内存不足 2 VMWare Ubuntu 扩展内存后黑屏 解决办法 xff1a 详情参考文章https www cnblogs com codingdog p 14879313 html
  • Linux目录解释

    bin bin是binary 二进制 的缩写 这个目录是对UNIX系统习惯的沿袭 xff0c 存放着使用者最经常使用的命令 例如 xff1a cp ls cat boot 这里存放的是启动LINUX时使用的一些核心文件 dev dev是de
  • 数据库的插入更新语句

    目的 xff1a 实现在数据库插入数据的时候 xff0c 只对重复的数据进行更新 xff1b 实现方式 xff1a 1 在表中建立一个唯一索引 xff0c 主键 xff08 已有唯一索引的特性 xff09 2 在插入数据 sql语句 xff
  • Linux安装Yapi

    需求 xff1a 按公司需求 xff0c 前后端开发 xff0c 由于过往开发都是后端先进行 xff0c 前端须等后端开发玩接口 xff0c 依照开发文档才能进行接口调试 xff0c 大大增加了项目时间 xff0c 故采用YAPI来作为解决
  • mysql8.0 安装 修改密码 允许远程连接

    mysql从5 7一下子跳跃到了8 0 xff0c 其中的改变还是很大 xff0c 有点这里就不说了 xff0c 小伙伴们自己去百度了解一下 xff0c 这里重点说一下 xff0c 安装的事 1 解压后 xff0c 文件下下面是没有my i
  • IOS开发入门之二——第一个App

    如果你对怎么开始IOS开发都不懂的话 xff0c 请看点下面的链接 xff0c 先学习关于IOS开发环境的配置以及Swift语言入门 xff1a IOS开发入门之一 Swift语言基础 本章将教大家创建一个标准的苹果手机应用并让它在手机模拟
  • IOS开发入门之五——storyboard的使用(上)

    需要iOS开发视频资料可以加我微信 1914532832 验证信息请注明 xff1a IOS开发 上节介绍了纯代码开发 xff0c 就是所有页面全部用代码来写 xff0c 纯代码开发缺点就是比较慢的 xff0c 而且很不直观 xff0c 需
  • UILabel文字内容自动换行

    UILabel视图其实是可以显示多行文本的 xff0c 但是如果不做设置 xff0c UILabel默认是显示一行的 xff0c 并且如果文字内容太多 xff0c 超过屏幕的部分就显示不出来了 其实UILabel设置多行文本很简单 xff0
  • 谈谈android的动画

    android动画为app提供更丰富 更绚丽的视觉效果 xff0c 因此app或多或少都会添加动画效果 在此总结一下 xff0c 本人android开发过程中 xff0c 有关动画的内容 一 android动画种类和区别 android动画
  • android好用的第三方库2018使用总结

    需要android开发视频资料可以加我微信 1914532832 验证信息请注明 xff1a android开发 不知不觉2018年已经过了大半 xff0c 来总结一下今年用到的一些好用的框架和第三方库 xff0c 包括App架构 异步通信
  • Linux(debian7)操作基础(四)之CPU频率调整

    在Linux中 xff0c 内核的开发者定义了一套框架模型来完成CPU频率动态调整这一目的 xff0c 它就是CPU Freq系统 如下为CPU的几种模式 xff08 governor参数 xff09 xff1a ondemand xff1
  • ubuntu oh-my-zsh

    简单说明下shell bash zsh sh shell是一个用C语言编写的程序 xff0c 是一种脚本编程语言 xff0c 是一个连接内核和用户的软件 xff0c 是用户使用Linux的桥梁 shell是指一种应用程序 xff0c 这个应
  • 获取携程机票信息(爬虫)

    仅供个人学习使用 xff01 2022 01 01 版 span class token comment 64 author AIslandX span span class token comment 64 date 2022 01 01
  • Ubuntu下~/.bashrc文件的恢复方法

    问题描述 如果不小心在更改环境变量文件 bashrc时出现将文件内容覆盖的情况 xff0c 比如echo hello world gt bashrc没有使用添加模式而是覆盖模式 xff0e NOTE xff1a 非覆盖情况下 xff0c 不
  • Debian11 普通用户启动Wireshark没有权限

    普通用户启动 wireshark 报错 xff0c 没有权限 可以在终端使用 sudo wireshark 启动 解决方法如下 xff1a 1 添加wireshark用户组 sudo groupadd wireshark 2 将dumpca
  • 批量创建txt文本

    最近在进行html学习时 xff0c 用的编辑器是txt文本 xff0c 但每次都要新建文本 xff0c 比较麻烦 xff0c 所以打算创建多个文本 批量创建文件方法 xff1a 1 打开Excel表格 输入以下内容 可以利用excel的特
  • 文本相似度计算工具类

    package com xxxx xclouddesk utils import cn hutool core collection CollUtil import cn hutool extra tokenizer Result impo
  • c++20 ranges库

    ranges库在对元素进行逐一操作或者判断时可以省掉很多循环体 xff0c 使代码的可读性提高 例如 xff0c 要从一个vector中拿出所有的偶数并求平方并逆序排列 xff0c 生成一个新的vector xff0c 以前这样写 xff1
  • Linux : nano: command not found

    nano command not found 这是因为在Linux中没有安装nano而已 我们只需要安装一下就好了 安装命令 yum install nano 遇到选择 一路Y就行了

随机推荐

  • 【Shotcut】用最短路径编辑一个视频

    目录 一 图解最短路径二 新建工程三 导入素材四 编辑视频4 1 图片素材拖入时间线 xff0c 自动添加V1视频轨道4 2 视频素材拖入图片素材后面4 3 时间线添加音频轨道4 4 音频素材拖入音频轨道 xff0c 和视频素材左端对齐4
  • 【Shotcut】画中画_调整大小位置

    目录 一 大小画中画1 1 新建工程1 2 导入素材1 3 将一个视频拖入时间线 xff0c 自动创建V1轨道1 4 Ctrl 43 I 新建V2轨道 xff0c 将另一个视频拖入1 5 将两段视频剪齐1 6 对上面的V2轨道添加Size
  • Docker安装mysql 8 忽略表名大小写,通过命令修改my.cnf配置文件,无需进容器重新初始化数据库

    看了很多博客都是需要先启动容器再进容器内部修改my cnf 重新初始化数据库 xff0c 然而DockerHub直接就对容器启动时设置了my cnf的修改方式 xff0c 具体步骤简单如下 xff1a 官方参考链接 xff1a https
  • 解决 Windows 10 自带虚拟机运行 Ubuntu 18.04 卡顿的问题

    来源 xff1a A guide how to run Ubuntu 18 04 in Enhanced Mode in Hyper V 系统要求 控制端 xff1a Windows 10 xff0c 1803以及之后 受控端 xff1a
  • linux常用命令command not found的解决方案(自己整理)

    1 ifconfig command not found 是因为没有安装此命令包 xff0c 安装方法 xff1a yum install net tools2 sz和rz文件上传命令command not found 执行 xff1a w
  • Window7升级 PowerShell

    一 查看当前PowerShell版本 1 命令行输入powershell 2 命令行输入get host 二 下载新版PowerShell xff08 下载说明 xff1a https docs microsoft com zh cn po
  • MSE(均方误差)函数和RMSE函数

    本文链接 xff1a https blog csdn net qq 36512295 article details 86526799 MSE xff08 均方误差 xff09 函数一般用来检测模型的预测值和真实值之间的偏差 训练集 xff
  • PSNR-峰值信噪比(原理及Python代码实现)

    本文链接 xff1a https blog csdn net leviopku article details 84586446 PSNR的全称为 Peak Signal to Noise Ratio xff0c 直译为中文就是峰值信噪比
  • matlab向量的模

    向量 v 中的元素 v1 v2 v3 vn xff0c 下式给出其幅度 xff1a v 61 v12 43 v22 43 v32 43 43 vn2 MATLAB中需要采按照下述步骤进行向量的模的计算 xff1a 采取的矢量及自身的积 xf
  • 图像阶梯效应

    图像阶梯效应现象产生原因 在利用二阶偏微分方程进行平滑图像过程中 xff0c 有时会出现 阶梯效应 或者是 块效应 即图像处理后某些区域内灰度相同 区域内灰度相同 xff0c 表示该区域任意一点其灰度值的一阶导数为0 这说明随着迭代次数增加
  • 邻接矩阵

    逻辑结构分为两部分 xff1a V和E集合 xff0c 其中 xff0c V是顶点 xff0c E是边 因此 xff0c 用一个一维数组存放图中所有顶点数据 xff1b 用一个二维数组存放顶点间关系 xff08 边或弧 xff09 的数据
  • JavaScript

    1 a 任何数值除以0都会导致错误而终止程序执行 但是在JavaScript中 xff0c 会返回特殊的值 xff0c 因此不会影响程序的执行 比0大的数除以0 xff0c 会得到无穷大 xff0c 所以js用infinity来x显示出来
  • -操作系统

    1进程同步的引入背景 xff1a 在多道程序环境下 xff0c 进程是并发执行的 xff0c 不同进程之间存在这不同的相互制约关系 为了协调进程之间的相互制约关系 xff0c 引入了进程同步的概念 2在有n个进程共享一个互斥段 xff0c
  • -网络基础

    1 物理层 xff1a RJ45 CLOCK IEEE802 3 xff08 中继器 集线器 网关 xff09 数据链路 xff1a PPP FR HDLC VLAN MAC xff08 网桥 xff0c 交换机 xff09 网络层 xff
  • 恒生面试准备

    目录 1 flex布局 2 vue的特性有哪些 xff1f 3 Vue中父子组件的传值的方式有几种 xff1f 它们有什么数据上的限制 4 项目中用了vue组件传值的方式有哪些 5 项目中用到的组件 6 浏览器输入url到渲染网页的过程 7
  • 同程艺龙一面

    目录 1 说说HTML5 2 link标签要放到head之后 xff0c script标签要放到body标签结束之前 xff0c 为什么 3 HTML语义化重要性 4 meta中的viewport干嘛的 5 P标签中的文字如何水平垂直居中
  • 杭州端点一面

    目录 1 vue双向绑定 2 Promise了解过吗 xff1f promise all解释一些 xff0c 为什么可以链式回调 3 let和var的区别 4 深拷贝和浅拷贝区别和实现方式 5 父子组件传值 6 了解webpack吗 xff
  • iOS 中 cell和 label 的自适应高度

    之前我们使 的 cell 一直都是同样的高度 或者某行固定 度 实际开发中经常要让 cell 根据 Model 中文本的长短动态的更改高度 1 获取文本高度 计算一段文本在限定宽高内所占矩形大 iOS7计算文本 度 法 CGRect bou
  • C++获取含有中文的字符串长度

    在Windows下 xff0c 中文字符在C 43 43 中的内存占用为2字节 xff0c 此时采用字符串长度获取函数得到的结果会将一个中文字符识别为两个长度 xff1a include lt stdio h gt include lt s
  • IOS中自定义cell大小的两种方法

    第一种 xff1a 自定义cell xff0c 不用xib的 xff0c 用已经封装好的类Category m类 第一步 xff1a label 的自定义高度 xff0c 用的是 xff08 封装好的方法 xff09 根据 label 中的