好吧,目前我有一个导航 Controller ,带有一个可以让用户登录的右键。
但是我想将登录按钮更改为单击后注销,并且此注销按钮将调用不同的 IBAction。
帮助可视化这一点。
默认情况下,我的导航 Controller 上有一个表示登录的右键,一旦按下此登录按钮,就会按下 ibaction login:(id)sender。
我想要做的是将按钮更改为注销并在单击时调用 logout:(id)sender。
这可能吗?
谢谢。
最佳答案
您可以更改按钮按下时的操作:
- (void)login:(UIButton*)button {
[button setTitle:@"Logout"];
[button setAction:@selector(logout:)];
}
- (void)logout:(UIButton*)button {
[button setTitle:@"Login"];
[button setAction:@selector(login:)];
}
或者,由于该按钮位于 UINavigationBar 上,因此您可以这样做:
-(IBAction)login:(id)sender{
UIBarButtonItem *logoutButton = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemDone
target:self
action:@selector(logout:)];
[[self navigationItem] setRightBarButtonItem:logoutButton];
[logoutButton release];
}
-(IBAction)logout:(id)sender{
UIBarButtonItem *loginButton = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemDone
target:self
action:@selector(login:)];
[[self navigationItem] setRightBarButtonItem:loginButton];
[loginButton release];
}
关于iphone - 导航栏按钮,根据点击更改 IBAction,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6557903/