繁体   English   中英

内联选择器的UITableView滚动性能

[英]UITableView scrolling performance with inline pickers

在此处输入图片说明

我有一个静态UITableView,它使用嵌入式选择器来允许用户更改各种属性。 选择器位于其对应的值单元格下面的单元格中,并且隐藏起来,直到用户轻击上方的单元格为止。

表格中共有3个部分,共有8个选择器视图。

我的问题是,当用户第一次在表格视图上向下滚动(到第2和第3部分-共有5个选取器)时,滚动非常可笑; 这会带来糟糕的用户体验。

发生的事情是,随着用户滚动,加载了选择器视图,并且由于这两个事件都在主线程上发生,因此滚动是垃圾。

有什么办法可以提高性能?

1.如果在didSelectRowAtIndexPath:index之后填充了数据值/ UIPickerView数组,则性能可能会受到影响,因此假设这些值已经存在,

static NSString *CellIdentifier = @"Cell"; UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
那么即使您在单元内部存在UIPicker的问题,您也可以获得相当大的改进的性能,因为只有第一个可见单元会被初始化一次,之后的单元会被重用。

2.另一个解决方案可以是使用详细的VC在各种值中选择一个,或者在UITableViewCell内使用UITableView而不是UIPickerView来显示多个值。 参考链接1希望这会有所帮助。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM