您如何管理iOS项目中的视图标签?

Kev*_*vin 1 objective-c ios uistoryboard

我有一个iOS应用程序,它使用一些具有大量元素的viewcontrollers.我在界面构建器中(在故事板中)构建了viewcontrollers.对于一些关键元素(loginbutton,重要文本等),我创建了一个IBOutlet,以便能够在我的代码中使用这些元素(主要调整文本/图形).
对于我需要快速修复的其他一些(例如我以编程方式显示和隐藏的活动指示器),我选择不创建IBOutlet,而是给它们一个标签号并通过该viewWithTag:(NSInteger)方法访问它们.

这似乎对我有用(这只是我的第二个iOS项目,所以这可能是完全错误的).但是现在视图控制器变得越来越复杂,我发现很难记住我已经用于标签的数字.除了通过所有元素并检查他们的标签之外,有没有办法跟踪这个?

也许以这种方式使用标签是完全错误的,在这种情况下也很好.我可以查看它们一次,只为我现在使用标签的所有情况创建IBOutlets.

Fog*_*ter 5

我会尽量避免使用view tags.

通过使用propertiesdata models不是标记,总有其他(并且几乎总是更好)的方法完全相同.

这篇文章是我发现的一些很好的例子,说明为什么它们不是一个好主意... http://doing-it-wrong.mikeweller.com/2012/08/youre-doing-it-wrong -4- uiview.html

如果需要访问UI元素IBOutlet,则在需要它的类的接口中创建for.

或者,如果有多个元素相同则可以创建,而IBOutletCollection这只是一个包含链接到它的所有元素的数组.