Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/107.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 为应用程序设置设计表视图的最佳实践?_Ios_Uitableview - Fatal编程技术网

Ios 为应用程序设置设计表视图的最佳实践?

Ios 为应用程序设置设计表视图的最佳实践?,ios,uitableview,Ios,Uitableview,对于我的应用程序的设置视图控制器,我希望有一个表视图,其中包含一组用户可以调整的选项。拨动开关、分段器、步进器等 实现这一目标的最佳方式是什么?在每个单元格遵循简单布局的情况下,表视图非常简单。也许是一个标题和一些潜台词。但是在这种情况下,一个单元格可能是五种布局中的一种,这取决于正在更改的设置类型 是处理UITableViewCell子类的最佳方法,在返回单元格之前,在tableView的cellForRowAtIndexPath:中,将自定义属性(如kind)设置为toggle或label?

对于我的应用程序的设置视图控制器,我希望有一个表视图,其中包含一组用户可以调整的选项。拨动开关、分段器、步进器等

实现这一目标的最佳方式是什么?在每个单元格遵循简单布局的情况下,表视图非常简单。也许是一个标题和一些潜台词。但是在这种情况下,一个单元格可能是五种布局中的一种,这取决于正在更改的设置类型

是处理UITableViewCell子类的最佳方法,在返回单元格之前,在tableView的
cellForRowAtIndexPath:
中,将自定义属性(如
kind
)设置为
toggle
label
?然后在该单元子类的
viewDidLoad
中,根据
kind
属性设置单元

这是低效的吗?我是否应该创建一个包含所有控件的单元格,但这些控件都是隐藏的,然后根据
kind
启用它们?我应该为每种类型的单元格创建一个子类,并使用我想要的不同控件吗


我就是这么想的。但是有没有更可取的方法呢?这是不是因为每个单元格之间没有必要的可预测模式,所以效率低下?

既然您将此用于设置,您考虑过吗


在有些情况下,这可能有些过分,我求助于在故事板中创建一个静态表视图,在这里我可以布局每个不同的设置,并在设计时控制其外观。

我不喜欢这样的想法:如果我不喜欢别人的代码,我就必须调试别人的代码。这就是为什么我试着自己写代码,然后看看它是否适合我的需要。如果没有,我会去看看InAppSettingsKit

你要求的是一个非常简单的东西,我几乎在我的每一个应用程序中都实现了,即带有选项的UITableView

我会这样做的。您可以在xcode中直接完成所有这一切

  • 创建UITableView控制器
  • 让它成为一个导航控制器。这样你就可以像“设置”一样在上面添加标题
  • 将其更改为静态单元格
  • 然后将其更改为分组单元格
  • 创建所需数量的组
  • 对于每个单元格,根据需要添加开关
  • 向每个分组添加页脚和页眉
  • 根据需要在每个选项旁边添加漂亮的图片
我希望这有帮助。这是我的一个示例项目设置屏幕截图。您无法看到我创建的页眉和页脚


我建议使用中提到的AppSettings工具包。但如果你从头开始构建这个,我会在故事板中创建表视图,并为每种不同类型的字段创建一个可重用的原型单元——一个原型单元用于文本字段,一个原型单元用于开关,等等。每个原型单元将是
UITableViewCell
的不同子类,并实现你定义的协议,使用标签名称的属性,以及设置词典中要将字段绑定到的键的名称。@Bhargav在情节提要中,您可以选择单元格并将其附件更改为显示指示器。