热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

如何从底部向上填充UITableView?

如何解决《如何从底部向上填充UITableView?》经验,为你挑选了3个好方法。

是否可以颠倒tableView的顺序.我已经搜索了很多解决方案,但所有结果都不是我想要实现的解决方案.他们都建议滚动到表的最后一个位置scrollToRowAtIndexPath并反向填充数据.但是,如果表内容是动态的,并且在某些情况下并非所有单元都有数据,则这不起作用.例如,在普通的tableView中,顺序是:


标签1

标签2

标签3

滚动方向
v
V.


期望的结果是:
滚动方向
^
^

标签3

标签2

标签1


在这个例子中,如果我使用建议的方法scrollToRowAtIndexPath并使用对象数组的长度,我只会从顶部获得第三个单元格.并最终得到这样的东西:


意外结果:

标签3

标签2

标签1

滚动方向
v
V.


任何帮助都会非常感谢你.



1> KlimczakM..:

要从底部填充表,请使用以下命令:

- (void)updateTableContentInset {
    NSInteger numRows = [self tableView:self.tableView numberOfRowsInSection:0];
    CGFloat cOntentInsetTop= self.tableView.bounds.size.height;
    for (NSInteger i = 0; i 

要反转元素的顺序,请使用:

dataSourceArray = dataSourceArray.reverseObjectEnumerator.allObjects;

Swift 2.2版本(更新):

func updateTableContentInset() {
    let numRows = tableView(self.tableView, numberOfRowsInSection: 0)
    var cOntentInsetTop= self.tableView.bounds.size.height
    for i in 0..

Swift 3.0 +/4.0版本(更新):

self.tableView.cOntentInset= UIEdgeInsetsMake(contentInsetTop, 0, 0, 0)


不幸的是,当您在可以具有动态高度的UITableViewCells上使用AutoLayout时,此解决方案将无法工作.
任何适用于自动布局/动态单元高度的解决方案?
语法和逻辑从3.0开始改变了?我得到:`不能调用非函数类型的值'UITableView!'`*语法改变了*line:`tableView(self.tableView,heightForRowAt:IndexPath(item:i,section:0))`

2> 小智..:

首先反转uitableview

    tableView.transform = CGAffineTransformMakeScale (1,-1);

然后在细胞中反转细胞.

- (UITableViewCell*)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath;

    ...

    cell.contentView.transform = CGAffineTransformMakeScale (1,-1);



3> 小智..:

Swift 4.0和4.2版本

viewDidLoad中的第一个反向UITableView

override func viewDidLoad() {
        super.viewDidLoad()
        tableView.transform = CGAffineTransform(scaleX: 1, y: -1)
}

然后反转cellForRowAt中的单元格。

func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
        guard let cell = tableView.dequeueReusableCell(withIdentifier: "MyTableViewCell", for: indexPath) as? MyTableViewCell else { fatalError() }

        cell.contentView.transform = CGAffineTransform(scaleX: 1, y: -1)
        return cell
    }


推荐阅读
  • 掌握DSP必备的56个核心问题,我已经将其收藏以备不时之需! ... [详细]
  • 2019年后蚂蚁集团与拼多多面试经验详述与深度剖析
    2019年后蚂蚁集团与拼多多面试经验详述与深度剖析 ... [详细]
  • 探讨 `org.openide.windows.TopComponent.componentOpened()` 方法的应用及其代码实例分析 ... [详细]
  • Go语言中的高效排序与搜索算法解析
    在探讨Go语言中高效的排序与搜索算法时,本文深入分析了Go语言提供的内置排序功能及其优化策略。通过实例代码,详细讲解了如何利用Go语言的标准库实现快速、高效的排序和搜索操作,为开发者提供了实用的编程指导。 ... [详细]
  • 本文深入探讨了 Android 中的 SharedPreferences 机制及其应用场景。作为一种轻量级的数据存储方案,SharedPreferences 采用了键值对的形式,类似于 iOS 中的 NSUserDefaults。它适用于存储简单的配置信息和用户偏好设置,如登录状态、主题选择等。通过分析其内部实现原理和使用方法,本文为开发者提供了详细的指导和最佳实践建议。 ... [详细]
  • 本文深入探讨了Android事件分发机制的源代码,重点分析了DecorView作为Activity根布局的角色及其在事件传递中的作用。同时,详细解析了PhoneWindow在Activity窗口管理中的关键功能,以及它如何与DecorView协同工作,确保用户交互事件的高效处理。 ... [详细]
  • 本文深入探讨了视图坐标与事件分发机制,详细分析了 `dispatchTouchEvent(MotionEvent event)` 和 `onTouchEvent(MotionEvent event)` 方法中 `event.getX()` 和 `event.getY()` 的具体作用及其在不同视图层级中的传递过程。通过实例解析,阐明了事件从触摸屏到具体视图组件的分发流程,帮助开发者更好地理解和优化用户交互体验。此外,文章还讨论了常见的事件分发问题及解决方案,为实际开发提供了宝贵的参考。 ... [详细]
  • 优化后的标题:在Android中利用GridView实现动态视觉效果
    项目中用到的一些动画,GridView的Item依次从屏幕外飞入到相应位置,附上相关代码: MainActivity.java packa ... [详细]
  • 前言在我们的项目里经常会用到ViewPager+Fragment实现选项卡滑动切换的效果,ViewPager会预加载下一个Framgment的内容,这样的机制有优点也有缺点:预加载 ... [详细]
  • 利用C#技术实现Word文档的动态生成与编辑
    本文通过一个简单的示例,介绍了如何使用C#语言实现Word文档的动态生成与编辑功能。文章详细阐述了在项目中引用Word动态库的方法,并通过具体代码示例展示了如何创建和操作Word表格。此内容旨在为初学者提供参考和学习资料,欢迎读者提出宝贵意见和建议。 ... [详细]
  • BZOJ4240 Gym 102082G:贪心算法与树状数组的综合应用
    BZOJ4240 Gym 102082G 题目 "有趣的家庭菜园" 结合了贪心算法和树状数组的应用,旨在解决在有限时间和内存限制下高效处理复杂数据结构的问题。通过巧妙地运用贪心策略和树状数组,该题目能够在 10 秒的时间限制和 256MB 的内存限制内,有效处理大量输入数据,实现高性能的解决方案。提交次数为 756 次,成功解决次数为 349 次,体现了该题目的挑战性和实际应用价值。 ... [详细]
  • 本项目在Java Maven框架下,利用POI库实现了Excel数据的高效导入与导出功能。通过优化数据处理流程,提升了数据操作的性能和稳定性。项目已发布至GitHub,当前最新版本为0.0.5。该项目不仅适用于小型应用,也可扩展用于大型企业级系统,提供了灵活的数据管理解决方案。GitHub地址:https://github.com/83945105/holygrail,Maven坐标:`com.github.83945105:holygrail:0.0.5`。 ... [详细]
  • 本题库精选了Java核心知识点的练习题,旨在帮助学习者巩固和检验对Java理论基础的掌握。其中,选择题部分涵盖了访问控制权限等关键概念,例如,Java语言中仅允许子类或同一包内的类访问的访问权限为protected。此外,题库还包括其他重要知识点,如异常处理、多线程、集合框架等,全面覆盖Java编程的核心内容。 ... [详细]
  • 循环结构与零钱问题:多题型综合解析与应用
    循环结构与零钱问题:多题型综合解析与应用 ... [详细]
  • 1.html页面如何使用swiper对swiper不熟练的小伙伴们可能不知道怎么开始使用它,那么下面就让我来简单讲述一下关于swiper的使用流程,这 ... [详细]
author-avatar
cfpage
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有