<分区>
标签 ios objective-c scope
<分区>
我想创建一个包含我将多次使用的方法的文件。
假设我想在 Javascript 中创建一个“方法”文件,我将创建一个名为 functions.js 的文件,并在上面编写我的函数,如下所示
函数.js:
function myAlert(message){
alert(message);
}
如果我将此文件包含在我的 HTML 头文件中,只要包含 functions.js,我就可以从任何地方调用 mAlert()
有没有办法在 Objective-C 中做类似的事情?
应该创建哪个文件,在哪里/如何包含它们,以及如何调用这些方法?
最佳答案
你有几个选择。
类可以包含类方法,这些方法由类本身而不是类的实例执行。您声明一个类方法时用“+”而不是“-”开头:
+ (void) aClassMethod;
然后使用类名调用它:
[MyClass aClassMethod];
只要给定文件导入了 MyClass 的 header ,就可以调用该类方法。
这种方法的问题在于,由于它是一个类方法,它无法访问实例变量中存储的状态数据。
另一种选择是将“方法”类设为单例类。然后,您可以在任何地方调用单例中的实例方法:
[[Methods sharedMethods] myAlertWithString: @"message"];
在 SO 上搜索 Cocoa 中的单例设计模式。有很多例子。
关于ios - 使用常用方法创建类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21839457/
相关文章:
java 。重新声明类初始值设定项内的类字段和方法嵌套 block (框架大括号)差异中的局部变量
iphone - iOS中 View 层次结构中的 subview 管理
objective-c - 错误-[NSIndexPath 发布] : message sent to deallocated instance 0x6a9d790
objective-c - 如何将我的整数值分配给 CMTime iOS Sdk
iphone - 释放你拥有的所有@property 保留@synthesize?
java - 在 Java SwingWorker 方法的签名中使用最终变量
ruby-on-rails - rails 构建或更新方法?
ios - 等待 AWSS3TransferManagerDownloadRequest 完成(iOS、Objective-C)