objective-c – UITableView将所选行设置为刷新控件

objective-c – UITableView将所选行设置为刷新控件,第1张

概述我想将UITableView中的选定行设置为刷新控件.我这样做,因为我在UITableView的顶部有一个 refresh control,当我加载数据时(并且他们实际上并没有将它拉下来),我希望活动指示器视图可见(即刷新控件的一部分). 现在,我所做的是将刷新控件设置为“刷新状态”(具有旋转活动指示器). [self.refreshControl beginRefreshing]; 这很好用,但 我想将UItableVIEw中的选定行设置为刷新控件.我这样做,因为我在UItableVIEw的顶部有一个 refresh control,当我加载数据时(并且他们实际上并没有将它拉下来),我希望活动指示器视图可见(即刷新控件的一部分).

现在,我所做的是将刷新控件设置为“刷新状态”(具有旋转活动指示器).

[self.refreshControl beginRefreshing];

这很好用,但唯一的问题是,除非因为它是第1行(索引0)的默认值而无法看到它,所以它是隐藏的.

注意:在发生这种情况时,UItableVIEw中有0个项目(并且始终是).

例如,如果我去:

[self.tableVIEw selectRowAtIndexPath:0 animated:YES scrollposition:UItableVIEwScrollpositiontop];

它会将所选项目的位置设置为第一行,但我想让它显示刷新控件,所以我想可能会这样做:

[self.tableVIEw selectRowAtIndexPath:-1 animated:YES scrollposition:UItableVIEwScrollpositiontop];

会工作(因为它是第一项下面的1索引),但当然不会编译.

解决方法 因为UItableVIEw是UIScrollVIEw的子类,所以您可以通过设置tableVIEw的contentOffset在第一行上方显示刷新控制器.例如,如果刷新控件的高度为100,则可以将刷新控件设置为视图.

[self.tableVIEw setContentOffset:CGPointMake(0,-100) animated:YES];

或者只是在没有任何动画的情况下显示它或实现自己的动画:

self.tableVIEw.contentOffest = CGPointMake(0,-100);

一旦刷新完成并且您想要隐藏控件,就可以将其设置回0.

Documentation link here

总结

以上是内存溢出为你收集整理的objective-c – UITableView将所选行设置为刷新控件全部内容,希望文章能够帮你解决objective-c – UITableView将所选行设置为刷新控件所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1007331.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-22
下一篇 2022-05-22

发表评论

登录后才能评论

评论列表(0条)

保存