gpt4 book ai didi

objective-c - IOS - 使用 #import 类的正确方法

转载 作者:行者123 更新时间:2023-11-29 04:24:21 24 4
gpt4 key购买 nike

我正在编写一个测试项目来学习用代码编写所有内容。我想这样做,以便我可以更好地理解 Storyboard 中的元素在幕后为我做什么

在我的项目中,我有几个共享相同 UI 元素的 UIViewController。例如,我在屏幕顶部有一个 UITool 栏,其中有几个按钮。

现在我想将该 UIToolbar 放在一个单独的类中,这样我就不必将其全部写出来或将其复制粘贴到每个 Controller 中。

现在我知道我可以通过这样做来实现这一目标:

#import "General_Add_ons.h" //the UIToolbar is properly set up in this file

@interface FirstViewController : General_Add_ons

然后我就使用[self topToolBar];//topToolBar是工具栏的名称

现在我只想澄清这是最好的还是唯一的方法?

不知何故,我觉得我应该能够做到这一点:

    General_Add_ons *gao = [[General_Add_ons alloc] init];
[gao topToolbar];

我是否以错误的方式思考这个问题?如果我有多个外部类,第一种方法似乎受到限制。

提前致谢。

最佳答案

你的方法看起来是正确的。如果您有多个需要相同 UI 元素或其他 Controller 代码的 UIViewController 实例,则可以将这些元素放入 UIViewController 子类中。就您而言,我相信 General_Add_ons 类是您的子类将从中继承的 UIViewController

此类(您的General_add_ons)应该具有可重用工具栏的属性,例如

@property (nonatomic, strong) UIToolbar *toolbar;

顺便说一句,Cocoa 中的类名按照惯例是:前缀+大写单词,不带下划线。苹果在 naming conventions 上有一个很好的引用.

编辑

为了澄清,您可以根据需要多次对自定义子类进行子类化。例如,在我的代码中,我有一个类 CCFViewController ,它封装了我希望所有 View Controller 都具有的通用属性和行为。那么,在项目中,所有 View Controller 都继承自该父 Controller 。同样,您的工具栏将位于父类(super class)中,其他 Controller 将从它继承。

关于objective-c - IOS - 使用 #import 类的正确方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12563439/

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