Zar*_*aki 6 iphone objective-c plist root.plist
我在我的应用程序中有一个设置包..包含root.plist 现在我有一个包含复选框的屏幕..在按下复选框时我想更改plist中PSToggleSwitchSpecifier的DefaultValue键的BOOL值.由于它是在运行时完成的..我的问题是..可以在运行时更改文件,如果是的话......给出一个想法如何做到这一点?
这是plist:
<plist version="1.0">
<dict>
<key>PreferenceSpecifiers</key>
<array>
<dict>
<key>DefaultValue</key>
<string></string>
<key>Key</key>
<string>Username</string>
<key>Title</key>
<string>Username</string>
<key>Type</key>
<string>PSTextFieldSpecifier</string>
</dict>
<dict>
<key>DefaultValue</key>
<string></string>
<key>IsSecure</key>
<true/>
<key>Key</key>
<string>Password</string>
<key>Title</key>
<string>Password</string>
<key>Type</key>
<string>PSTextFieldSpecifier</string>
</dict>
<dict>
<key>Type</key>
<string>PSToggleSwitchSpecifier</string> <-----toggleSwitch
<key>Title</key>
<string>Remember</string>
<key>Key</key>
<string>CheckBox</string>
<key>DefaultValue</key> <----- Default Value
<false/> <---- want to change this value
</dict>
</array>
<key>Title</key>
<string>Settings</string>
</dict>
</plist>
Run Code Online (Sandbox Code Playgroud)
提前谢谢你;)
小智 11
因为设置包所在内你的应用程序的包,你不能在运行时改变它,只能在编译时.
但是,您可以使用NSUserDefaults在运行时设置值,设置应用程序将自动反映这一点.不过,它会被保存在其他地方.您可以像使用设置包一样阅读它,也可以通过NSUserDefaults.
请注意,您不应该直接从设置包中读取,因为它没有意义.您应始终使用获取和设置用户默认值NSUserDefaults.当用户在设置应用程序中进行更改时,NSUserDefaults将自动反映此情况.它们将始终保持同步.
| 归档时间: |
|
| 查看次数: |
7434 次 |
| 最近记录: |