我可以隐藏/禁用Settings.bundle中的字段吗?



我在根中有几个文本字段项。我的Settings.bundle的列表。我需要所有的应用程序,但我希望其中一个是隐藏或不可编辑的用户。例如,当用户在iPhone上进入设置->MyApp时,我希望其中一个字段在那里不可见,或者禁用编辑。这可能吗?

当然可以。只需将项目类型更改为title。

您仍然可以保存并从代码中读取它的值。但是,它不会出现在app. settings.

经过进一步的研究,我找到了我问题的答案,也找到了我正在努力解决的问题的答案。

问题:可以隐藏/禁用Settings.bundle/Root.plist中的字段吗?
答:

问题:我如何安全地为我的应用程序存储身份验证信息?
答案:内置Keychain服务。

来源:Keychain Services Tasks for iOS

简而言之,你不能。长话短说:我猜你正在使用根。Plist在应用中的其他地方,对吗?如果是这样,我建议在这种情况下,如果您确实需要它以您所描述的方式工作,则创建两个plist文件,并在运行时合并它们。

也就是说,创建Root。.plist文件只包含你希望用户在iOS设置页面中更改的字段(例如,不包含你当前试图隐藏的字段),另一个.plist文件包含你想在应用程序中处理的其余字段。

然后,在运行时,首先加载Root。Plist,然后将另一个. Plist文件的内容合并到将要使用的数据结构中。

不是很光滑,但可能工作。

将plist中的类型从"Text Field"设置为"Title",因为您将获得一个用户不再可编辑但可被应用程序读取的字段。

就UI一致性而言,它看起来不太正确,所以这可能不是禁用首选项的理想解决方案。

最新更新