问题标签 [uitableviewautomaticdimension]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ios - scrollToRowAtIndexPath 总是从顶部滚动而不是从当前偏移量
在我的UITableView
我使用一种方法滚动到最后一个单元格:
但这并没有按预期工作,因为即使我在倒数第二个单元格上,表格也总是从顶部滚动。如何解决这个问题?
ios - 如何在不跳转的情况下使用 CADisplayLink 和 UITableViewAutomaticDimension 滚动时对 UITableView 执行更新?
为什么 UITableView 滚动时会跳转?你能帮助我吗?
对于帮助我的人,我开始并稍后奖励 100 的另一个赏金:-)
如何在UITableView
设置它的同时执行一些更改contentOffset
?
这就是我设置我的方式scrollDisplayLink
:
然后在scrollTable
我做以下事情:
滚动很好,除非行1-4
被注释或我禁用UITableViewAutomaticDimension
. 当他们没有被评论时,表格跳转的时间与滚动时currentContentOffset
不同。0
为什么会这样?是线程问题还是其他问题?
笔记:
UITableView
适用于UITableViewAutomaticDimension
:
ios - UITableView:使用自定义/可变单元格高度滚动到底部在初始滚动时不准确
编辑:https ://streamable.com/rfym将在行动中展示它。我第一次按滚动到底部时,它并没有一直到底部。然后我手动一直到底部并快速向上滚动。一旦我再次按下滚动到底部,它就可以正常工作,因为它正在使用缓存高度。
所以,我已经看到了很多答案,但似乎没有一个对我有用,我很确定这些对许多其他人也不起作用:
tableView.setContentOffset(CGPointMake(0, CGFloat.max), animated: true)
:
轰隆隆,瞬间,我的 tableView 消失了。
tableView.setContentOffset(CGPointMake(0, self.tableView.contentSize.height - self.tableView.frame.size.height), animated: true)
:
不准确。它不会一直到底部。有时,它会过冲!
tableView.scrollToRowAtIndexPath(NSIndexPath(forRow: self.replies.count - 1, inSection: 0), atScrollPosition: .Bottom, animated: true)
同样,与前一个一样,这是不准确的。
我知道为什么这是不准确的。我需要的是一个解决方案...
这里有一些代码要运行:
请记住,只有初始滚动到底部并不会一直滚动。如果我用手指一直滚动到底部,然后向上滚动到顶部并触发滚动到底部,那就完美了。
原因很简单:我会tableView.willDisplayCell
在每个单元格上触发,这意味着所有高度都已缓存。这意味着tableView.estimatedHeightForRowAtIndexPath
在初始滚动后完美运行。
但是,如果我从不滚动到底部以缓存所有高度并且我尝试以编程方式滚动到底部,它就不会到达那里。为什么?因为我有tableView.estimatedHeightForRowAtIndexPath
回报113。
有些人可能会争辩说我需要一个更准确的估计,但我拒绝接受这种想法。我的细胞可以小到50个,大到5000个。没有准确的估计。
我该如何减轻这种情况?
也许我需要在不同的时间缓存我所有的高度?那是几点?我不想自己做任何计算。其美妙之tableView.willDisplayCell
处在于我可以缓存cell.frame.size.height
而不是自己进行繁琐的计算。
编辑 2:我有一个有趣的解决方案......这非常笨拙......而且不可接受......但从技术上讲它是有效的。附上娱乐。
ios - 滚动时根据下载的图像高度使用 UITableViewAutomaticDimension 调整自定义表格单元格的高度
我在运行时获取图像的 URL 并下载并在表格中显示这些图像。图像正在异步下载(使用 SDWebImage)。更重要的是,我想以实际尺寸显示所有这些图像。第一次,表格加载正常,我有超过 5 个部分(每个部分包含一行),当我滚动表格并尝试使用 reloadSections 更新部分时,表格显示的单元格图像高度错误。有人可以帮我解决这个问题吗?注意:我正在使用 UITableViewAutomaticDimension
objective-c - 带有 UITextView 的 UITableViewRowAnimationAutomatic 无法正确显示
在 iOS 9 上,使用 UITableViewAutomaticDimension 和 viewDidLoad 上的 200.festimatedRowHeight 设置我的 tableView。
它适用于带有图像、按钮或标签的单元格,但对于带有 textView 和按钮的单元格,按钮显示正确,但当我的 tableView 更新时 textView 不会展开。
你对想要有什么想法可能是我的错误吗?
我应该在我的单元格中以编程方式更新高度约束吗?
谢谢
ios - 文本为空字符串时自动布局UILabel的动态高度计算不起作用?
在 iOS 8 中,我有UILabel
一个UITableViewCell
. 我希望单元格根据UILabel
's text 具有动态高度。它工作正常。但是当文本是空字符串时,它似乎有一个默认高度,但我希望它为零。
这是我所做的:
- 使用 . 设置单元格的约束
masonry
。设置top
,bottom
约束。 - 放
tableView.estimatedHeight
- 返回
UITableViewAutomaticDimension
委托heightForRow
方法
那我做错什么了吗?有什么帮助吗?
swift - UITableViewAutomaticDimension 在 iOS 8 上不起作用
我正在按照本教程制作自我调整大小的单元格。
我将自定义单元格注册到表格视图中,并在单元格 xib 中手动给了每个子视图约束。请参考GitHub 中的源代码
在一个单元格的内容视图中垂直排列 3 个标签在 iOS 9 中效果很好,但在 iOS 8 中却不行(在设备和模拟器中都进行了测试)。
在 iOS 8 中,一个单元格没有合适的高度,并且不是每个标签都显示它的全部文本。
iOS 8 不适合:
正如我所料,iOS 9:
任何意见,将不胜感激!
更新
代码viewDidLoad
:
ios - 检测 UITableViewCell 上的双击和单击以执行两个操作
我有一个PFQueryTableViewController
我正在尝试学习一些 tableView 交互。
我目前拥有的:tableView 单元格在点击时增加其高度,didSelectRowAtIndexPath
或者我基本上可以将单元格相关数据与下一个 viewControllerperformSegueWithIdentifier
一起使用,同时prepareForSegue
使用一次点击。
在下面的代码中,如果我注释“点击代码以增加 tableView 单元格的高度”代码,我可以检测到双击。否则,单击会增加高度,因为代码位于 didSelect 块内。
我需要什么:单击一下,单元格高度会增加或减少。当单元格高度增加时,如果我双击,它应该将单元格数据设置为 next UIViewController
。
如果没有,单击应该增加或减少高度。双击应该将单元格数据转移到下一个UIViewController
代码如下:
我可以使它工作的另一种方法是,如果我可以在代码NSIndexPath
之外获得选定的单元格didSelectRowAtIndexPath
,我基本上可以使用双击来执行 if else 以获得所需的操作。你能NSIndexPath
脱离 tableView 默认块吗?