gpt4 book ai didi

objective-c - UIButtons 不工作

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:57:01 25 4
gpt4 key购买 nike

我有一些 Objective-C 代码可以在两个 View 之间进行转换。我有转换代码。我想做的是在按下按钮时转换到 View ,但是这似乎只在我用代码生成按钮时有效,它不适用于我在 IB 中创建并链接到代码的按钮(使用文件的所有者等)。

这是我的一些代码:

- (void)goToTwo {
ALPHAAppDelegate *appDelegate = [[UIApplication sharedApplication] delegate];
[appDelegate displayView:2];
}

- (void)viewDidLoad {
NSLog(@"load01");

//Button Code
UIButton *btnOne = [UIButton buttonWithType:UIButtonTypeRoundedRect];
btnOne.frame = CGRectMake(40, 40, 240, 30);
[btnOne setTitle:@"One!" forState:UIControlStateNormal];
[btnOne addTarget:self action:@selector(goToTwo) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:btnOne];

[super viewDidLoad];
}

当 View 加载时,我正在创建一个按钮,这样我就有两个按钮,一个是用代码创建的,一个是在 IB 中创建的,这两个按钮此刻都会做同样的事情(过渡到下一个 View ),

我的 .h 文件:

#import <UIKit/UIKit.h>


@interface View1 : UIViewController {

}

-(IBAction) goToTwo:(id)sender;

@end

我非常确定我已将按钮正确链接到函数,将 TouchUpInside 旁边的节点拖到文件所有者,然后单击方法名称。

关于为什么代码生成按钮有效而 IB 按钮无效的任何想法?

非常感谢。

最佳答案

IBAction 名为 goToTwo:(末尾有冒号),但在 .m 文件中实现并由代码中创建的按钮调用的方法是 goToTwo(没有冒号最后)。

更改 IBAction(并在 IB 中重新连接)或更改 .m 文件中的方法实现以匹配 .h 文件中的声明。

关于objective-c - UIButtons 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5906063/

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