我想知道如何检测按钮是否隐藏,以及应用了多少alpha。然后,当调用viewDidLoad时,可以应用这些值以使按钮处于关闭应用程序时保留的状态。
我该如何编码?
谢谢,
詹姆斯
答案 0 :(得分:2)
如果您的标题显示,您想要使用NSUserDefaults
,那么您可以像这样设置它们:
-(void)saveButtonState:(UIButton*)button {
NSUserDefaults defaults = [NSUserDefaults standardUserDefaults];
[defaults setBool:button.hidden forKey:@"isHidden"];
[defaults setFloat:button.alpha forKey:@"alpha"];
}
-(void)restoreButtonState:(UIButton*)button {
NSUserDefaults defaults = [NSUserDefaults standardUserDefaults];
button.hidden = [defaults boolForKey:@"isHidden"];
button.alpha = [defaults floatForKey:@"alpha"];
}
如果您想对多个按钮执行此操作,则可以使用tag
来区分默认值:
-(void)saveButtonState:(UIButton*)button {
NSUserDefaults defaults = [NSUserDefaults standardUserDefaults];
[defaults setBool:button.hidden forKey:[NSString stringWithFormat:@"isHidden%d",button.tag]];
[defaults setFloat:button.alpha forKey:[NSString stringWithFormat:@"alpha%d",button.tag]];
}
-(void)restoreButtonState:(UIButton*)button {
NSUserDefaults defaults = [NSUserDefaults standardUserDefaults];
button.hidden = [defaults boolForKey:[NSString stringWithFormat:@"isHidden%d",button.tag]];
button.alpha = [defaults floatForKey:[NSString stringWithFormat:@"alpha%d",button.tag]];
}
答案 1 :(得分:1)
要查看按钮状态,请查看此帖子:Xcode: Check if UIButton is hidden, using NSUserDefaults
关于Alpha,尝试询问返回值:self.button.alpha;
您可以更新SQLite数据库中按钮和Alpha按钮的状态(值)。在viewDidLoad方法中,从数据库中回调值并立即应用它们。关于如何做到这一点,请在网上查看更多信息,你会到达那里,因为互联网上有关于该主题的教程。嗯,这就是我要做的,SQLite实际上非常有用;但也许还有其他方法。