我正在Segue
上进行自定义Storyboard
,我有一个包含此代码的按钮:
[self performSegueWithIdentifier:@"line3" sender:sender];
点击按钮就可以了。我遇到的问题是这个代码只能在一个不在void函数内部的按钮函数中运行。我试着点击按钮,效果很好。当我将其粘贴到void函数中时,它会给我一个抱怨发件人的错误。我尝试将其更改为无效,但没有任何反应。你能给我一些解决这个问题的见解吗?我正在检查UserDefault
,它与我要查找的内容相符,然后我想执行此代码:[self performSegueWithIdentifier:@"line3" sender:sender];
-(IBAction)LoginAttemp:(id)sender{
[self performSegueWithIdentifier:@"line3" sender:sender];
}
-(void) LoginFailed{
[self performSegueWithIdentifier:@"line3" sender:sender];
}
我收到错误:
使用未声明的标识符'sender'
有什么见解?
答案 0 :(得分:8)
更改
[self performSegueWithIdentifier:@"line3" sender:sender];
到
[self performSegueWithIdentifier:@"line3" sender:Nil];
发件人是:
要用于启动segue的对象。这个对象是 在实际的segue期间提供信息用途。
答案 1 :(得分:1)
void
不是问题。问题是sender
不是保留字。这是IBAction
的参数之一:
-(IBAction)LoginAttemp:(id)sender{
请参阅?就在最后。这是Objective-C等价于IBAction LoginAttemp(id sender)
如果您没有发件人,则可以传递nil
或self
。优先使用self
。
-(void) LoginFailed{
[self performSegueWithIdentifier:@"line3" sender:self];
}