addobserver问题用于获取keyvalue

时间:2014-09-24 12:53:25

标签: ios xcode ios8 xcode6 addobserver

因为我是使用Observer模式的新手。我的应用程序在iOS7及更低版本上运行良好。

我使用XCode 6将我的应用程序升级到iOS8。当我第一次在XCode 6中打开我的应用程序并运行它时,没有显示任何错误消息我的应用程序崩溃。

我试过应用调试器和异常断点。

我发现我的应用程序在addObserver:行代码崩溃了。我在做的是:

  1. 我的应用程序首先打开登录屏幕,
  2. 用户必须输入用户名&密码。
  3. 如果新用户然后登录,则用户名&密码保存到数据库中。
  4. 内部用户可以选择更新密码&保存在DB中。
  5. 现在,当用户第二次登录时,我的观察者没有发现密码更改。

    相同的代码行在较低版本上正常工作。我做错了什么?我的代码:

    SqlLiteUser *userObj =(SqlLiteUser*)[objDAOFactory getUserDAO];
    [userDAO addObserver:self forKeyPath:@"sendPasswordStatus" options:(NSKeyValueObservingOptionNew) context:@selector(handleSendPasswordResult:)];
    
    [userDAO addObserver:self forKeyPath:@"noConnection" options:(NSKeyValueObservingOptionNew) context:@selector(noConnection)];
    

0 个答案:

没有答案