gpt4 book ai didi

ios - 如何将按钮的隐藏状态保存为 NSUserDefault?

转载 作者:行者123 更新时间:2023-11-28 18:23:34 29 4
gpt4 key购买 nike

下面我有一些代码通过 Xcode 中的委托(delegate)系统简单地隐藏了一个按钮。我相信这一切都有效,但是当我将 View 传输回“leveSelector” View 时,委托(delegate)无效,因此按钮不会显示为未隐藏。因此,我想应用一些 NSUserDefaults 来保存按钮状态,这样当我稍后在游戏中返回“levelComplete” View 时,我希望按钮不被隐藏。

这里有我正在使用的delegate系统的代码:

这里我有关卡的完整代码....h

#import <UIKit/UIKit.h>
#import "levelComplete.h"
#import "LevelSelector.h"

@interface levelComplete : UIViewController{
}
@property (nonatomic, strong) id<CustomDelegate> delegatePpty;

@end

.m

@implementation levelComplete
@synthesize delegatePpty;

-(void)someAction
{
[self.delegatePpty hideUnhidebutton:YES];//Call the delegate method to execute
}


- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view from its nib.
[self someAction]; // Here I call my action
}
@end

我这里有 leveSelector 代码...

.h

  @protocol CustomDelegate <NSObject>
-(void)hideUnhidebutton:(BOOL)value;
@end

#import <UIKit/UIKit.h>
#import "levelComplete.h"
#import "LevelSelector.h"

@interface LevelSelector : UIViewController <CustomDelegate>{

}

@property (nonatomic, strong) UIButton *level1;

@end

.m

@implementation LevelSelector
@synthesize level1;

-(void)hideUnhidebutton:(BOOL)value
{
[self.level1 setHidden:value];

}

所以澄清一下,当按钮被隐藏为 NSUserDefault 时,我想保存它。在这种情况下,我希望隐藏的按钮称为 level1

编辑:感谢所有发帖的人,应用你的代码效果很好

最佳答案

您可以直接将值保存到 NSUserDefaults:

NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
[defaults setObject:[NSNumber numberWithBool:value]
forKey:@"SomeSensibleKey"];

您可以通过以下方式检查保存的状态:

[[defaults objectForKey:@"SomeSensibleKey"] boolValue]

关于ios - 如何将按钮的隐藏状态保存为 NSUserDefault?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15762743/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com