在下面的代码示例中,我希望能够从另一个函数btnSubmitLoginPassword调用backgroundTap。我应该通过什么参数?
-(IBAction) backgroundTap:(id)sender{
[userName resignFirstResponder];
[password resignFirstResponder];
}
-(IBAction) btnSubmitLoginPassword{
[self backGroundTap:?????????]
[self validate];
}
答案 0 :(得分:14)
PengOne的回答很好,但问题的确切答案是:传递nil
发送者参数:
[self backgroundTap:nil];
答案 1 :(得分:5)
你没有在行动中使用sender
,为什么不把它留在外面呢?
-(IBAction) backgroundTap{
[userName resignFirstResponder];
[password resignFirstResponder];
}
-(IBAction) btnSubmitLoginPassword{
[self backGroundTap];
[self validate];
}
答案 2 :(得分:2)
您没有在方法
中使用id值 -(IBAction) backgroundTap:(id)sender
{
[userName resignFirstResponder];
[password resignFirstResponder];
}
改为使用
-(IBAction) backgroundTap
{
[userName resignFirstResponder];
[password resignFirstResponder];
}
然后将其调用为
-(IBAction) btnSubmitLoginPassword{
[self backGroundTap];
[self validate];
}
如果您想单独更改/访问发件人属性,则应使用(id)发件人
答案 3 :(得分:2)
通常,sender参数是UIView或生成事件的任何其他对象。在这种情况下,将使用self作为发件人。