如何改进我的代码并处理重复的代码?

时间:2013-05-31 17:37:49

标签: ios objective-c

我正在构建一个包含多个视图控制器的应用程序。每个VC都包含一个UITabBar对象(通过Storyboard插入)。我创建了一个扩展UITabBar的类来自定义TabBarItems等。

为了检测标签栏上的点按,我的VC包含UITabBarDelegate,每个都实现didSelectItem

我的问题是,如何改进我的代码并删除实现didSelectItem的每个VC下存在的所有重复代码?我可以在某处收集此代码,然后所有这些VC访问它并检测水龙头吗?

我想保留有关从上一个视图中按下了哪个项目的信息,并将其保留在新视图上。

1 个答案:

答案 0 :(得分:1)

如评论中所述,您可以在任何常见的超类中实现委托方法。另一个想法:委托不限于该项所属的类。您可以创建一个专门用于处理选项卡栏委托方法的类,并使该类成为每个选项卡栏的委托。

该类将实现必要的方法,并基于标识符或其他系统,以任何所需的方式处理来自任何VC的任何内容。