gpt4 book ai didi

iphone - 如何在 Objective-C 中的 View Controller 之间共享通用方法?

转载 作者:行者123 更新时间:2023-12-03 19:29:41 27 4
gpt4 key购买 nike

在我的应用程序中,有许多 View Controller ,它们都有自己的用途。然而,在底层,它们确实需要一些共同的维护工作,可以使用相同的方法代码,而不是每个人都有自己的代码副本,直接粘贴进去。

有没有办法分享这些常用方法的代码?我看到两种可能性:

1) 在内存中真正共享的代码副本之一,如在方法的特殊维护对象中

2) 在代码块中编写一次,但根据每个 View 的需要分配多次。

哪一个是正确的路径,或者什么是正确的路径,以及如何以最简单的方式实现它?

请好心,房间里有新编码员。

谢谢。

-里克

最佳答案

Note: This is an old question/answer reflective of Apple practices at the time, and answered for a new coder looking for a simple solution they can understand (as requested in the question). There are better and more testable ways to achieve this, using composition.

实现您想要的效果的最佳方法是为您的 View Controller 创建一个公共(public)父类。因此,您的每个自定义类不是直接从 UIViewController 继承,而是从 SomeFeatureViewController 继承(其中 SomeFeature 描述了提供的通用功能),此类继承自UIViewController。现在,每个实际的 View Controller 都将从 SomeFeatureViewController 继承,并且任何通用方法(以及这些方法使用的任何通用实例变量)都可以放置在这个父类中。

@interface SomeFeatureViewController : UIViewController
{
int common_iVars;
}
- (void)commonMethods;
@end

@interface ActualViewController : SomeFeatureViewController
{
int specific_iVars;
}
- (void)specificMethods;
@end

关于iphone - 如何在 Objective-C 中的 View Controller 之间共享通用方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5446614/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com