我正在使用CocoaLibSpotify
库来开发将使用Spotify API的iOS应用程序。我已经知道了它想要的位置,但是我遇到了一些问题。
当用户触摸我的" spotify of Spotify"按钮时,我执行以下代码:
-(IBAction)logoutButtonTouched:(id)sender
{
// Clear out the user's settings that I am saving.
NSString *appDomain = [[NSBundle mainBundle] bundleIdentifier];
[[NSUserDefaults standardUserDefaults] removePersistentDomainForName:appDomain];
[[SPSession sharedSession] logout:^(void) {
SPLoginViewController *controller = [SPLoginViewController loginControllerForSession:[SPSession sharedSession]];
controller.allowsCancel = NO;
}];
}
这确实确实注销用户并显示SPLoginViewController
,但是我的问题是,用户名和密码字段仍然包含他们登录的值。有人显示SPLoginViewController
时清除这些字段的方法吗?
此功能不在登录控制器中,这确实是一个错误。
您可以这样做。请注意,这确实是脆弱的代码,如果登录控制器的任何内部细节更改,并且将来会失败。
SPLoginViewController *controller = [SPLoginViewController loginControllerForSession:[SPSession sharedSession]];
id internalLoginViewController = [controller.viewControllers objectAtIndex:0];
UITextField *loginField = [internalLoginViewController valueForKey:@"usernameField"];
UITextField *passwordField = [internalLoginViewController valueForKey:@"passwordField"];
loginField.text = @"";
passwordField.text = @"";