标签: nsuserdefaults

如何在NSUserDefault中保存用户名和密码?

我需要在NSUserDefault中保存用户名和密码.我打算在IB中放置一个圆形的矩形按钮.在按下时,用户名和密码将保存在NSUserDefault中,这样当用户杀死应用程序并尝试在一段时间后再次登录时,他们不需要再次输入他们的登录详细信息.任何帮助将受到高度赞赏.

谢谢和最好的问候,

个人计算机

iphone objective-c nsuserdefaults

-2
推荐指数
1
解决办法
9472
查看次数

NSUserDefaults中NSMutableArray结构的错误是什么?"尝试插入非属性列表对象"

我很只是想保存NSMutableArray/ NSArraystructS IN NSUserDefaults:

typedef struct {
    int key;
} provision;

provision p1;
p1.key = 4;
NSValue *p1Value = [NSValue value:&p1 withObjCType:@encode(provision)];

provision p2;
p2.key = 5;
NSValue *p2Value = [NSValue value:&p2 withObjCType:@encode(provision)];

NSMutableArray *provisions = [[NSMutableArray alloc] init];
[provisions addObject:p1Value];
[provisions addObject:p2Value];

[[NSUserDefaults standardUserDefaults] setObject:provisions forKey:@"Provisions"];
Run Code Online (Sandbox Code Playgroud)

我按照指南这里存储了所有的结构NSValue.但是最后一行会导致运行时错误:

*因未捕获的异常'NSInvalidArgumentException'而终止应用程序,原因:'* - [NSUserDefaults setObject:forKey:]:尝试为关键项目插入非属性列表对象("<04000000>","<05000000>")

我究竟做错了什么?

c struct objective-c nsuserdefaults ios

-2
推荐指数
1
解决办法
497
查看次数

Swift NSUserDefaults没有设置

我不想问简单的问题,但今天我很难过.我需要做的就是查看应用程序启动时NSUserdefaults中是否设置了值.如果不是那么添加一个值.而已.每次我启动我的应用程序,我都会得到这个结果

func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool
    {

        let defaults = NSUserDefaults.standardUserDefaults()
        var returnValue: [String]? = NSUserDefaults.standardUserDefaults().objectForKey("BGColorStr") as? [String]

        println("returnValue: \(returnValue) ...")

        if (returnValue == nil)
        {
            println("Value is nil")
            defaults.setObject("Default", forKey:"BGColorStr")
            defaults.synchronize()
        }
        else
        {
            println("Value is NOT nil")
        }


        // Override point for customization after application launch.
        return true
    }

returnValue: nil ...
Value is nil
Run Code Online (Sandbox Code Playgroud)

nsuserdefaults ios swift

-2
推荐指数
1
解决办法
3459
查看次数

将变量从一个Swift类传递到另一个Swift类的最佳方法?

假设我在一个类中定义变量ViewController,并且想要从另一个类访问该变量,比如说BLEHandler.我该怎么做呢?我遇到了麻烦NSUserDefaults,所以除此之外的方法将不胜感激.

nsuserdefaults ios swift

-2
推荐指数
1
解决办法
7910
查看次数

同步后NSUserDefaults未保存

我的应用程序中有以下代码

    NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
    [defaults setObject:kArchivedUsername forKey:userID];
    [defaults synchronize];
    NSLog(@"saved: %@", [defaults stringForKey:kArchivedUsername]);
Run Code Online (Sandbox Code Playgroud)

但是,输出是这样的:

2016-04-07 15:50:44.560 BP (Test)[18357:464518] saved: (null)
Run Code Online (Sandbox Code Playgroud)

谁能告诉我为什么以及我能做些什么呢?

objective-c nsuserdefaults ios

-2
推荐指数
1
解决办法
165
查看次数

在NSUserDefaults中节省时间(NSDate)

我试图在"用户"达到限制时节省时间.所以限制是10例如,一旦达到这个限制,我想节省当前时间.然后他必须等待1个小时才能继续比赛.我开始这样做了,但是当我尝试这个时,我已经收到错误了:

var CurrentTime = NSDate()
CurrentTime = NSUserDefaults.standardUserDefaults()
Run Code Online (Sandbox Code Playgroud)

错误:

无法将"NSUserDefaults"类型的值指定为"NSDate"类型

似乎swift无法将'NSDate'保存为'NSUserDefault'.

time nsdate nsuserdefaults ios swift

-4
推荐指数
1
解决办法
3869
查看次数

iOS9和XCode 7中的NSUserDefaults不返回值

我正在使用NSUserDefaults来检索值.例如用户名.

我已经创建了一个constants.h文件,将它添加到我的viewcontroller中

#import "constants.h"
Run Code Online (Sandbox Code Playgroud)

在constants.h中 - 用户名定义为

#define USERNAME @"Monty Python"  
Run Code Online (Sandbox Code Playgroud)

然后在我的viewDidLoad中,我尝试读取这样的值

  NSString *userName = [[NSUserDefaults standardUserDefaults] stringForKey:USERNAME];
Run Code Online (Sandbox Code Playgroud)

但是userName总是nil/null - 我的其他键也是如此.

NSUserDefaults如何知道使用我的Constants.h文件?我的代码是否在正确的"位置"?为什么我的值总是为零 - 在调试器和NSLog中?

谢谢

nsuserdefaults ios

-4
推荐指数
1
解决办法
153
查看次数

在我现有的硬币上添加硬币

我之前有一个类似的问题,但是添加分数却从未解决过,所以我想我现在就问它并同时修复这两个问题.我做了一个商店,人们可以在那里购买硬币,这些硬币将被添加到他们已有的硬币中.他们已经拥有的硬币可以通过以下方式加载:

NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; 
NSString *loadcoins = [defaults objectForKey:@"savedcoins"];
[coinsdisplay setText:loadstring];
Run Code Online (Sandbox Code Playgroud)

我有一个按钮,你可以买100个硬币

-(IBAction)savecoins100:(id)sender { 
    NSString *savecoins = @"100"; 
    NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; 
    [defaults setObject:savecoins forKey:@"savedcoins"]; 
    [defaults synchronize];
}
Run Code Online (Sandbox Code Playgroud)

我想要的是新的字符串不是@"100"而是100 +以前的硬币现在这将是loadcoins但我不知道如何正确编码这可以有人帮助我吗?

谢谢

cocoa-touch objective-c nsuserdefaults ios

-5
推荐指数
1
解决办法
175
查看次数

标签 统计

nsuserdefaults ×8

ios ×7

objective-c ×4

swift ×3

c ×1

cocoa-touch ×1

iphone ×1

nsdate ×1

struct ×1

time ×1