自定义 UITableView 动态单元格高度

2024-02-28

我搜索了无数博客和文章,了解如何确定自定义 UITableViewCell 的动态高度及其详细文本。我真的很难找到任何关于这方面的好的文档。

我需要做的是让单元格根据里面的文本生长,但高度永远不要低于 70。

我已经在 StackOverflow 上尝试了此类问题的几个答案,但没有一个有效。我的整个应用程序即将完成,但我确实需要在发布之前完成此任务,这很麻烦。

这是我正在尝试的,但我只是得到了一些相互重叠的单元格。根据我读到的内容,如果单元格中的自定义单元格或文本视图也需要找到框架,但我不知道如何做到这一点或将它们混合在一起以返回一个高度。

任何帮助将不胜感激,谢谢!

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

  CGSize aSize;
aSize = [[(Tweet*)[tweets objectAtIndex:indexPath.row]tweet] sizeWithFont:[UIFont 
systemFontOfSize:14]
            constrainedToSize:CGSizeMake(300.0, 1000.0)
                lineBreakMode:UILineBreakModeTailTruncation];

return  aSize.height;
}

不久前我遇到了类似的问题,这对我帮助很大。

#define PADDING 10.0f
- (CGFloat)tableView:(UITableView *)t heightForRowAtIndexPath:(NSIndexPath *)indexPath {
    NSString *text = [self.items objectAtIndex:indexPath.row];
    CGSize textSize = [text sizeWithFont:[UIFont systemFontOfSize:14.0f] constrainedToSize:CGSizeMake(self.tableView.frame.size.width - PADDING * 3, 1000.0f)];

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

自定义 UITableView 动态单元格高度 的相关文章

  • UITableView 干扰状态栏

    我正在开发一个具有 UITableViewController 的应用程序 该应用程序显示值列表 如下所示 如何将表格向下移动 使其不会与状态栏冲突 看来我无法对这个场景施加任何限制 所以我不知所措 使用以下 3 个属性UIViewCont
  • UIPageViewController:获取当前页面

    在过去的几天里 我一直在努力解决这个问题 经过所有这些杂耍 我发现我所需要的只是数据源方法中的当前索引 以使用当前可见页码进行更新 我有这个UIPageViewController数据源方法 我需要使用当前索引来获取委托方法的当前可见页面p
  • 将数据追加到 UITableView 的正确方法,swift

    我正在尝试使用两种方式将新数据添加到 UITableView 第一种方式 func insertData appendMessages Message var currentCount self messeges count var ind
  • iPhone UIWebview:如何强制使用数字键盘?是否可以?

    我正在尝试使用 PhoneGap 来开发一些 iPhone 应用程序 PhoneGap 基本上包装了一个 UIWebView 它运行良好 问题是我的应用程序有几个仅接受数字输入的输入字段 我确实需要强制使用数字键盘 而不是接受默认的标准键盘
  • Swift:在标签背景中制作图像

    我想将标签放入带有角半径的红色矩形的图像中 条件是图像大小必须等于或略大于标签大小 为此我找到了一个类似的question https stackoverflow com questions 3037902 adding backgroun
  • 如何禁用 NSDictionary 自动按键排序

    当我添加值时NSMutableDictionary它会自动设置密钥 我如何禁用它并按照第一组第一和第二组第二排列 NSMutableDictionary filteredDictionary NSMutableDictionary dict
  • iPhone 编程游戏

    使用 Objective C 还是 C 为 iPhone 编写游戏最好 像 Flight Control 这样的游戏会用什么语言编写 图形应采用什么格式才能在 iPhone 上正确显示并快速加载 像 Flight Control 这样的游戏
  • 找出窗口中的 UIBarButtonItem 框架?

    UIBarButtonItem不延长UIView 所以没有像框架属性这样的东西 但有什么办法我可以得到它是什么CGRect框架 相对于应用程序UIWindow 你喜欢用吗私有API https stackoverflow com quest
  • 我们可以在 Objective-C 中创建可空/非空属性吗?

    我们可以在 Objective C 中创建可空 非空属性吗 如果可以 那么如何创建 您可以使用 Nullable and Nonnull预选赛 property copy nullable NSString name property co
  • 使 UITableView 中的动态更新内容可供 VoiceOver 访问

    我正在努力让我的应用程序更易于访问 到目前为止 标签和提示等标准可访问性正在创造奇迹 然而 我在动态更新 UITableView 中显示的内容时遇到了问题 表的每一行大约每秒更新一次 但如果我尝试在此时创建每个单元格的accessibili
  • 在iphone中缩放后保留标签的分辨率

    我在视图中有一个标签 缩放视图后 标签看起来有点模糊 分辨率丢失 如何在缩放后保留分辨率 这是我的缩放代码 secondView transform CGAffineTransformIdentity UIView beginAnimati
  • 仅在导航弹出后分组 UITableViewCell 上才会出现黑色角

    我不是图形专家 但我以某种方式设法通过使用一些 CG 代码将背景视图设置为 backgroundView 来制作一些好看的自定义分组 UITableViewCells 在 3 1 3 之前的所有 SDK 中 也许是 3 2 我还没有在 iP
  • Objective-C 2.0中的多线程问题

    我有我的主应用程序委托 其中包含一个返回对象的方法 该应用程序委托在主线程上运行 我还有一个在不同线程上运行的 NSOperation 除了希望有时能够在主线程上调用我的应用程序委托方法之外 我还需要从 NSOperation 线程中调用它
  • iOS 15 中表视图标题上方的额外填充

    如何更改上面的额外填充UITableViewiOS 15 中开始出现的节标题 从 iOS 15 开始 UITableView包含一个名为的新属性sectionHeaderTopPadding https developer apple co
  • 使用NSString的drawAtPoint方法代替CGContextShowGlyphsAtPoint问题

    在我的应用程序中 我试图沿着路径渲染文本 这对于大多数字符来说都很好 但对于日语 或任何非 Mac Roman 就不行了 建议我使用 NSString drawAtPoint 它在我的 CATiledLayer 中显示正确的字符 然而 它们
  • 如何在 iPhone 中以编程方式访问保存的图像中的图像而不使用 UIimagePickerController?

    我知道如何让用户从 UIImagePickerController 选择图像 但我不想要那样 我只想将 NSArray 图像存储在手机中 但我不想让用户参与 选择一个然后拥有该图像 相反 我创建了自己的自定义图像选择器控制器并希望有画廊作为
  • iPhone 上的加速器范围是多少?

    我似乎无法在网上找到任何关于此的文档 而且我正在谷歌搜索的内容给了我很多相互矛盾的信息 From iphonedevsdk com http www iphonedevsdk com forum iphone sdk development
  • CGColorRef 导致崩溃

    我的代码发生了崩溃 并且我一直跟踪到在传递 2 个 CGColorRefs 时发生崩溃的行 以下是对象 CGColorRef startColor UIColor colorWithWhite 0 92 alpha 1 0 CGColor
  • 如何消除圆形矩形按钮周围的间隙而不删除其周围的边框? [复制]

    这个问题在这里已经有答案了 顺便提一句 这可能看起来像是关于按钮阴影问题的问题的重复 但它们有单调的背景 在我的例子中 背景是一些图像 所以简单的边框不能解决问题 While making app for iPhone Pad I noti
  • 将蒙版图像作为 PNG 文件写入磁盘

    基本上 我从网络服务器下载图像 然后将它们缓存到磁盘上 但在这样做之前 我想屏蔽它们 我正在使用每个人似乎都指出的屏蔽代码 可以在这里找到 http iosdevelopertips com cocoa how to mask an ima

随机推荐

  • 在 API 级别最低为 14 的应用中使用 Roboto 字体

    我有一个应用程序 其最低 API 级别为 14 我认为所有兼容设备都应默认安装 Roboto 字体 这种想法正确吗 如果我将 textView 字体设置为 Roboto 或 Roboto Light 它似乎默认为正常的无字体 有没有办法在不
  • 会话超时在 Azure Redis 缓存会话状态提供程序中不会滑动

    通过多个实例横向扩展 Web 应用程序是 Azure 云的最大优势之一 为了实现对我们的 Web 角色云应用程序的多个虚拟机支持 我们正在实施 Azure Redis 缓存 我们使用 RedisSessionStateProvider 提供
  • 使用 Modernizr 测试平板电脑和移动设备 - 征求意见

    我想使用 Modernizr 来检测用户是否在台式机 平板电脑或移动设备上查看网站 我最初的第一个想法显然是检查屏幕尺寸是否足以满足移动设备和更大的桌面的需求 对于屏幕尺寸也可以等于小型桌面屏幕 1024 x 768 的平板电脑设备 我也会
  • 使应用程序启动并保持横向模式

    如何以横向模式启动我的应用程序 并保持屏幕旋转 BOOL shouldAutorotateToInterfaceOrientation UIInterfaceOrientation interfaceOrientation return i
  • 如何限制推导式的大小?

    我有一个list并想要构建 通过理解 另一个列表 我希望通过一个条件限制这个新列表的大小 下面的代码将会失败 a 1 2 1 2 1 2 b i for i in a if i 1 and len b lt 3 with Traceback
  • 如何在 Windows 上限制进程的 CPU 使用率? (需要代码,而不是应用程序)

    有一些程序可以限制 Windows 中进程的 CPU 使用率 例如BES http mion faireal net BES and 线程大师 http threadmaster tripod com 我需要编写自己的程序 该程序与这些程序
  • 编写一个带有两个参数的 forAll 过程:系列的开始值和结束值,并将给定过程应用于该系列

    我正在尝试编写一个带有两个参数的 forAll 过程 一系列的开始值和结束值 生成的闭包还需要两个参数 一个应用于系列中所有元素的操作 以及一个初始值 这就是我所拥有的 我似乎遗漏了一些东西或者我不理解闭包背后的概念 define forA
  • 在 python 中处理大输入

    我几个月前开始学习编程 最近发现codechef http codechef com 问题是 对于使用大量输入的问题 我的代码总是超出时间限制 我什至似乎无法做到输入测试 http www codechef com problems INT
  • 变量嵌套 for 循环

    我试图弄清楚如何使用递归来执行 n 级嵌套 for 循环 例如 如果 n 3 则将有 3 个 级别 for z 0 z lt 6 z for y 0 y lt 6 y for x 0 x lt 6 x if z y x f do somet
  • Haskell:通用 IORef、MVar?

    我创建了以下特定于 IO monad 的函数 memoIO MonadIO m gt m a gt IO m a memoIO action do ref lt newMVar Nothing return do x lt maybe ac
  • ASPX 和 WinForms 之间如何通信

    如何从 ASPX 网页向 WinForms 应用程序发送命令 我们已经探索过使用不同的命令行参数执行 WinForms 应用程序 但想要更智能的东西 Thanks 在您的应用程序中创建一个侦听 HTTP 的 Web 服务器GET and o
  • PullRefreshIndicator 与 ScrollableTabRow 重叠

    我开始了解 Jetpack Compose 我把这个放在一起app https github com 4gus71n TheOneApp在我探索不同的日常用例时 该项目中的每个功能模块都应该解决不同的场景 该功能模块之一 chatexamp
  • 图像缩放类型在颤动上居中裁剪?

    我正在尝试做一些类似于 android ImageView 的 centerCrop 属性的事情 设置imageview的高度 并使其裁剪并对齐到中心 就像centerCrop在android上的工作一样 Widget bindItem B
  • C 中的暂定定义和链接

    考虑由两个文件组成的 C 程序 f1 c int x f2 c int x 2 我对第6 9 2段的阅读C99标准 http www open std org JTC1 SC22 wg14 www docs n1124 pdf是这个计划应该
  • 是什么导致不可变对象在没有安全发布技术的情况下被发布?

    即使不诉诸安全发布习惯用法 也可以发布不可变对象 这是什么意思 我读过了Java 并发实践 第3章 共享对象 但仍然无法理解该声明 不可变对象可以通过任何机制发布 V S 应该安全地发布有效的不可变对象 编辑 我经历过SO类似的问题 htt
  • 在 Java 中,/(即正斜杠)在 $Lambda$15/0x00000008000a9440@32e6e9c3 等对象引用中意味着什么?

    在 JShell 中 如果我这样做 interface Foo String foo Foo gt hi I get created interface Foo 2 gt Lambda 15 0x00000008000a9440 32e6e
  • 如何在 Java 中使用 Blender 模型?

    真的只是一个一般性问题吗 假设我正在制作一款游戏 并在 Blender 中制作了一个角色模型 我将如何在 Java 中使用这个模型 我会以某种方式导入它吗 Thanks 通常 在搅拌机中制作模型时 您可以以某种格式导出模型 以便稍后将其导入
  • Django 重写模型 Clean() 与 Save()

    保存模型时 我需要执行一些操作 尤其是从管理员那里执行 我将几个字段大写并检查以确保其中一个字段或另一个字段已填充 我还创建了场蛞蝓 现在 这些功能被分为覆盖清理和保存功能 它现在可以使用 但我很好奇何时使用它们 我浏览了文档 但找不到具体
  • 如何从 .js 文件中的 jQuery 函数访问 PHP 会话变量?

    如何从 js 文件中的 jQuery 函数访问 PHP 会话变量 在此代码中 我想从会话变量中获取 值 function progressbar progressbar value 37 您可以通过 PHP 生成 javascript 文件
  • 自定义 UITableView 动态单元格高度

    我搜索了无数博客和文章 了解如何确定自定义 UITableViewCell 的动态高度及其详细文本 我真的很难找到任何关于这方面的好的文档 我需要做的是让单元格根据里面的文本生长 但高度永远不要低于 70 我已经在 StackOverflo