iphone - 在未从操作调用时使用 IBAction 方法?

标签 iphone objective-c methods ibaction

当 IBAction 实际上不是从用户的操作中调用时使用 IBAction 时是否存在任何问题?

如果你有这样的 Action

-(IBAction)sayHello:(id)sender;

您可以在您的类(class)中调用它,例如:

[self sayHello:@"x"]

@"x"不执行任何操作,它只是填写发件人。

您实际上可以创建一个没有 (id)sender 的 IBAction 方法

-(IBAction)sayHello;

并从用户的操作和代码中调用它,但是您不会从界面中获得任何有用的发件人信息。从代码调用时,为发件人填写的“正确”方式是什么?您能否创建发件人信息以在代码中调用时发送?

只是想弄清楚。

最佳答案

我认为 OOP 的一个好的做法是折射方法 -(IBAction)sayHello:(id)发件人;

另一个方法叫做:-(void)sayHello; 并在方法内部 -(IBAction)sayHello:(id)发件人{ [ self 打招呼];

如果其他方法想要调用 sayHello:(id)sender 操作来完成某些工作,它可以调用 sayHello。方法名称应该对客户端有意义,可以毫无问题地调用它或变通。当你必须测试或调试时它会帮助你

关于iphone - 在未从操作调用时使用 IBAction 方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3027065/

相关文章:

iphone - AppStore会拒绝登录类型的应用程序吗?

objective-c - CoreGraphics 在白色 Canvas 上绘制图像

ios - 我们应该使用 ios 模拟器 7 在 xcode 5 中运行 iPhone 应用程序吗?

python - 什么是 numpy 方法 int0?

python - 在方法内访问方法内的变量

java - 链接到开始按钮的类不会运行

ios - EXC_BAD_INSTRUCTION(代码=EXC_I386_INVOP,子代码=0x0)在更改 uibutton 的标题标签大小更改时出现错误

iphone - 内部 iPhone 企业应用程序分发的替代解决方案

iphone - 将核心数据添加到现有的 iPhone 应用程序

ios - 如何以编程方式在 iOS 中从右向左移动文本