- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
到处都在说 IBAction 是什么,但没有解释整个声明的含义。
发件人和ID是什么?
问候,南拉他
最佳答案
据我所知,IBAction
只是意味着 void
id
是通用的 C 类型,它接受任何类型/类的对象。有点类似于C
中的void pointer。我们可以使用 id
作为方法的参数,以防不同类的对象访问该方法。
发件人
,这里,
changeGreeting:
一个例子:
假设方法 changeGreeting:
定义在 ClassA
中,其内容如下所示。
- (IBAction)changeGreeting:(id)sender {
[sender setText:@"Hello %@", [sender class]];
// Nothing can be returned from this method
}
并考虑我们在 B 类
中有以下几行。
// LINE 1
[aLabel addTarget:objOfClassA action:@selector(changeGreeting:) forControlEvents:UIControlEventTouchUpInside];
// LINE 2
[aTextField addTarget:objOfClassA action:@selector(changeGreeting:) forControlEvents:UIControlEventTouchUpInside];
在第 1 行中,aLabel
是发送者,objOfClassA
是接收者。在第 2 行中:aTextField
是发送者,objOfClassA
是接收者。这里aLabel
和aTextField
被称为senders 因为它们正在调用 方法changeGreeting:
.而 objOfClassA
被称为 receiver 因为 objOfClassA
changeGreeting:
方法在这里被调用。
当用户触摸 aLabel
或 aTextField
时,他们的 text
将更改为 Hello UILabel
或Hello UITextField
分别。
另一种方式: 我们还可以从 Class B
调用 changeGreeting:
方法 objOfClassA
,如下所示。
[objOfClassA changeGreeting:aLabel];
[objOfClassA changeGreeting:aTextField];
由于上面的代码是不言自明的,objOfClassA
是接收者。但是 aLabel
和 aTextField
不是发送者。因为他们没有调用该方法。在这里它们只是参数。这里实际的发送者是 Class B
,但是 aLabel
和 aTextField
是在参数 (id)sender
中传递的。无论哪种方式,方法执行的结果都是相同的。
关于iphone - 声明说明 - (IBAction)changeGreeting :(id)sender; iPhone,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4813491/
代码应按如下方式工作:在一个 View 上,我单击标签按钮,并且 tagButtonPressed IBAction 应将 tag 变量设置为 sender.tag 的标签按钮。效果很好。然后用户应该
我有一个暂停 IBAction 和一个恢复 IBAction,两者都用于按钮,但我有在游戏过程中收集的游戏点数。我如何在暂停 IBAction 中存储不同的游戏点整数值并将它们传递给恢复 IBActi
我想知道如何从另一个 IBAction 调用 IBAction。我想要做的是,当我触摸 previousPage 上的按钮时,nextPage 按钮的标题会发生变化。换句话说,我有这些IBAction
我得到了这个随机洗牌的 IBAction @IBAction func playRoundTapped(sender: UIButton) { cardNamesArray = GKRando
根据我的标题,我正在构建一个包含一些 UIButtons 的 View 。 我正在考虑将 2 个 Action 连接到一个 UIButton 事件,因为该按钮需要做两件事,但我需要按特定顺序执行它们。
我刚刚注意到在其 IBAction 中设置 UISwitch 的 isOn 会导致再次调用 IBAction。所以下面的代码: class ViewController: UIViewControll
我在一个应用程序上工作,我想使用另一个 UIControllerView 调用一个 UIControllerView 的 IBAction,请帮助我如何实现它。 假设,我有两个名为 FirstView
当我将按钮链接到源代码(在本例中为 .h 文件)并选择 NSButton 作为类型时,Xcode 将写入: - (IBAction)pushClear:(id)sender; 据我了解应该是 - (I
我如何能够根据另一个事件运行 IBAction?例如,我可以使用一段代码来运行 IBAction。 我想做的是让两个不同的按钮运行一个或多个 IBActions。 最佳答案 您可以将多个按钮连接到同一
好吧,我正在 Xcode(版本 3)中为 Mac OS X 编写一个应用程序,但我的 IBactions 遇到了问题。我编写它们,并将它们连接到我的按钮,但由于某种原因,当我单击按钮时它们永远不会被调
+(UIBarButtonItem*) settingsButtonForController:(UIViewController*) viewController{ UIBarButtonI
我对 Xcode 和编码都很陌生,所以请耐心等待,哈哈。我正在为一个科学博览会项目开发我的第一个应用程序,该应用程序基于选项卡,有两个主页。一页包含多个开关;无论哪个开关打开,都决定其他页面上的大按钮
我正在尝试将多个按钮链接到相同的IBAction,以运行类似但不同的代码。代码是将在另一个 View Controller 上单击的图像设置到按钮下的 UIImageView 中。所有按钮都链接到相同
我需要控制用户何时在搜索栏中键入内容。使用文本字段很容易,但我找不到使用搜索栏执行此操作的方法,因为我无法使用 IBActions。 最佳答案 UISearchBar 有属性 id delegate
我正在尝试为 iPhone 创建一个应用程序,我有一个主视图 Controller 和许多其他 View Controller 。这是因为它是一个多 View 应用程序。 在 ViewControll
我有一个 IBAction: - (IBAction)stop:(id)sender { NSLog(@"Called"); if (timer) { [timer i
嗨,我正在尝试通过单击按钮打开图像,在我的 .h 我有 @interface FirstDetailViewController : UIViewController { IBOutlet U
我正在创建一个新类 - 继承自 UITextView 的 UIMyTextView。 我希望此类发送新类型的事件,然后我将使用 IBuilder 将其连接到适当的 IBAction。 怎么做? 最佳答
我正在学习 CS193p Stanford iOS 类(class),并且即将完成作业 3 - 在该作业中,我还将图形计算器转换为适用于 iPad 的通用应用程序。当在计算器中输入程序(例如“x +
我有一个 IBAction,由 UIButton 触发。 在此 IBAction 中,我将应用程序连接到服务器,返回一个 Plist。 在此期间(在我的应用程序连接到服务器和服务器返回该 Plist
我是一名优秀的程序员,十分优秀!