2016-05-16 51 views
0

所以我有一个登录页面,在一个视图控制器中有两个视图。其中一个视图是登录页面,另一个视图显示用户信息。它们通过登录和注销按钮进行关联。 一旦它登录到页面,它工作正常。问题是,当我注销时,它会返回到登录页面。但是,当我尝试在关闭模拟器的情况下与其他用户登录时,前面的用户信息仍然存在。我不知道它是否存在我的代码或设置问题。这是如何设置页面登录页面没有完全注销用户iOS

更新:似乎旧的json文件不会被清除,直到手机停止并重新启动。一旦我这样做,最后一个登录的用户将被显示。所以这是下载部分的问题。我正在发送正确的用户名和密码,但它从不更新用户页面中的用户界面。

,这是正在使用

//userNameInput: passwordInput: 

@IBAction func onLoginClick(sender: AnyObject) { 
    myUserNAmeInput = TextFieldInput1.text! 
    myPasswordUserInput = TextInput2.text! 

    checkLoginCredentials(url) 

} 

@IBAction func onLogoutClick(sender: AnyObject) { 
    //null out everything for logout 
    theuserName = "" 
    theUserPass = "" 
    self.myJson = "" 

    self.stored.setObject(self.userNAme, forKey: "uName") 
    self.stored.setObject(self.userpassword, forKey: "uPass") 
    self.stored.synchronize() 
    self.view = myView 
} 

    func downlaodCI(myUrl : String, myUser : String, myPass : String) 
    { 
    Alamofire.request(.GET, myUrl) 
     .authenticate(user: myUser, password: myPass) 
     .validate(statusCode: 200..<300) 
     .responseString { response in 
      //print("Success: \(response.result.isSuccess)") 
      print("Response String: \(response.result.value)") 
      self.myJson = response.result.value! 


    } 
} 

谢谢你的任何帮助,这

+1

你能张贴你如何显示登录和注销页面的代码?是否使用segue,推控制器? –

+0

@赵一我这样做self.view = MyPageView来显示用户信息,我使用self.view = LoginView来注销。 – MNM

+1

你可以发布登录/注销的按钮动作吗? –

回答

1

你需要清除像下面的每个字段的所有信息:

userNameInput.text = "" 
passwordInput.text = "" 
+0

从我在日志中看到它只是继续使用它下载的同一个json文件第一次。一旦我停止了应用程序并重新启动它,它将加载新的用户信息没有问题。 – MNM

1

你当你按下退出键设置值空字符串的大部分代码。 示例: - barcode.text =“” 像这样在退出过程中试用此代码。

+0

仍然是同样的问题。它不断回到旧用户。我甚至检查了我发送给服务器的内容,并且仍然在提取旧信息。我像你所建议的那样排除了变量。看到它把旧的进入它必须是发送或接收部分 – MNM

+1

也为你的json对象做同样的事情。它会导致你错误的输入 –

+0

我也试过了,我在注销时清除了它,并且在下载新的之前我也清除了它。 Alamofire会保存数据并重用它吗? – MNM