菜单indexpath保存用户默认值swift

菜单indexpath保存用户默认值swift,swift,nsuserdefaults,Swift,Nsuserdefaults,我想保存我上次在菜单中单击的内容。他现在正在录音。但如果我选择Indexath,他会记录下来。如果我不选择,它就不会。即使我没有从菜单中选择项,如何保留上一条记录 let save11 = UserDefaults.standard.integer(forKey: "indexPath") let yenindex = save11 self.menuView.setSelected(index: yenindex) le

我想保存我上次在菜单中单击的内容。他现在正在录音。但如果我选择Indexath,他会记录下来。如果我不选择,它就不会。即使我没有从菜单中选择项,如何保留上一条记录

let save11 = UserDefaults.standard.integer(forKey: "indexPath")

        let yenindex = save11        
        self.menuView.setSelected(index: yenindex)    
        let userDefaults = UserDefaults.standard
        userDefaults.removeObject(forKey: "indexPath")

  menuView.didSelectItemAtIndexHandler = {(indexPath: Int) -> Void in   
                var placesdeger: String = ""

      UserDefaults.standard.setValue(indexPath, forKey: "indexPath")

                if indexPath == 0 {
                    let userDefaults = UserDefaults.standard
                    userDefaults.removeObject(forKey: "indexPath")                    
   UserDefaults.standard.setValue(indexPath, forKey: "indexPath")
                    placesdeger = "Yatak Odası"

            }
                if indexPath == 1 {
                    let userDefaults = UserDefaults.standard
                    userDefaults.removeObject(forKey: "indexPath")

          UserDefaults.standard.setValue(indexPath, forKey: "indexPath")
                    placesdeger = "Oturma Odası"
                    self.refreshData()

                }

每次单击菜单时,请删除以前的用户默认值并设置新的用户默认值。 每次都输入这段代码并获取新索引,如果未选中,则将在Userdefaults中获取旧值

       let userDefaults = UserDefaults.standard
       userDefaults.removeObject(forKey: "index")
       userDefaults.set(i, forKey: "index")
EDIT1 在仅定义一次常量的地方使用此选项

let userDefaults = UserDefaults.standard
如果您正在使用或任何其他我不知道的方法,但如果您获得适当的indexath,那么此代码将工作

menuView.didSelectItemAtIndexHandler = {(indexPath: Int) -> Void in   
                var placesdeger: String = ""
 userDefaults.removeObject(forKey: "indexPath")

                if indexPath == 0 {
                    let userDefaults = UserDefaults.standard

   UserDefaults.standard.setValue(indexPath, forKey: "indexPath")
                    placesdeger = "Yatak Odası"

            }
                if indexPath == 1 {



          UserDefaults.standard.setValue(indexPath, forKey: "indexPath")
                    placesdeger = "Oturma Odası"
                    self.refreshData()

                }

每次单击菜单时,请删除以前的用户默认值并设置新的用户默认值。 每次都输入这段代码并获取新索引,如果未选中,则将在Userdefaults中获取旧值

       let userDefaults = UserDefaults.standard
       userDefaults.removeObject(forKey: "index")
       userDefaults.set(i, forKey: "index")
EDIT1 在仅定义一次常量的地方使用此选项

let userDefaults = UserDefaults.standard
如果您正在使用或任何其他我不知道的方法,但如果您获得适当的indexath,那么此代码将工作

menuView.didSelectItemAtIndexHandler = {(indexPath: Int) -> Void in   
                var placesdeger: String = ""
 userDefaults.removeObject(forKey: "indexPath")

                if indexPath == 0 {
                    let userDefaults = UserDefaults.standard

   UserDefaults.standard.setValue(indexPath, forKey: "indexPath")
                    placesdeger = "Yatak Odası"

            }
                if indexPath == 1 {



          UserDefaults.standard.setValue(indexPath, forKey: "indexPath")
                    placesdeger = "Oturma Odası"
                    self.refreshData()

                }

我想你只需要在主屏幕的用户默认设置中设置默认值。我不知道该怎么做@我想你只需要在主屏幕的用户默认设置中设置默认值。我不知道怎么做@AbilashBansallet userDefaults=userDefaults.standard userDefaults.removeObject(forKey:“i”)让save11=userDefaults.standard.integer(forKey:“i”)让yenindex=save11 self.menuView.setSelected(index:yenindex)menuView.didSelectItemAtIndexHandler={(Indexath:Int)->UserDefaults.standard.setValue(indexath,forKey:“i”)中的Void,如果indexath==0{UserDefaults.standard.setValue(indexath,forKey:“i”)}//我在表单中执行了该操作,但不起作用。在“if”之前删除didSelectItemAtIndexHandler中的用户默认值“条件如你所说,我更改了主题的代码。它仍然不起作用。当我不选择项目时,它不会记录。我在回答中编辑了你的代码,请选中@stakabekor当我不从菜单中选择任何项目时,它不会再记录。让userDefaults=userDefaults.standard userDefaults.removeObject(forKey:“I”)让save11=UserDefaults.standard.integer(forKey:i)让yenindex=save11 self.menuView.setSelected(index:yenindex)menuView.didSelectItemAtIndexHandler={(indexPath:Int)->UserDefaults.standard.setValue(indexPath,forKey:i)中的Void如果indexPath==0{UserDefaults.standard.setValue(indexPath,forKey:“i”)}//我在表单中执行了该操作,但它不起作用。在“如果”之前删除didSelectItemAtIndexHandler中的用户默认值“条件如你所说,我更改了主题的代码。它仍然不起作用。当我不选择项目时,它不会录制。我在回答中编辑了你的代码,请选中@stakabekor。当我没有从菜单中选择任何项目时,它不会再次录制。