如何添加按钮到settings.bundle?

我正在开发一个iPhone应用程序,默认情况下用户保持登录状态。如果他想要注销,他应该打开设置并单击“注销”按钮,这将删除他的数据并在下次应用程序打开时要求登录。 如何添加这样的按钮? 在twitter设置中

在此处输入图像描述

不幸的是,使用公共API是不可能的。 请记住,Apple为它和它的合作伙伴的应用程序保留了许多很多未记录的(并且非常酷)function。 您仅限于以下内容:

文本字段 :文本字段类型显示标题(可选)和可编辑的文本字段。 您可以将此类型用于要求用户指定自定义字符串值的首选项。 这种类型的关键是PSTextFieldSpecifier。

标题 :标题类型显示只读字符串值。 您可以使用此类型显示只读首选项值。 (如果首选项包含含义模糊或非直观的值,则此类型允许您将可能的值映射到自定义字符串。)此类型的键是PSTitleValueSpecifier。

拨动开关 :拨动开关类型显示ON / OFF切换按钮。 您可以使用此类型配置只能包含两个值之一的首选项。 虽然您通常使用此类型来表示包含布尔值的首选项,但您也可以将其与包含非布尔值的首选项一起使用。 这种类型的关键是PSToggleSwitchSpecifier。

滑块 :滑块类型显示滑块控件。 您可以将此类型用于表示一系列值的首选项。 此类型的值是一个实数,您指定的最小值和最大值。 这种类型的关键是PSSliderSpecifier。

多值 :多值类型允许用户从值列表中选择一个值。 您可以将此类型用于支持一组互斥值的首选项。 值可以是任何类型。 这种类型的关键是PSMultiValueSpecifier。

:组类型用于在单个页面上组织首选项组。 组类型不代表可配置的首选项。 它只包含一个标题字符串,该字符串在一个或多个可配置首选项之前显示。 这种类型的关键是PSGroupSpecifier。

窗格:窗格子窗格类型允许用户导航到新的首选项页面。 您可以使用此类型来实现分层首选项。 有关如何配置和使用此首选项类型的详细信息,请参阅“分层首选项”。此类型的键是PSChildPaneSpecifier。

正如CodaFi所说,这是不可能的。 但是,使用切换开关“让我登录”可能是一个很好的解决方法。 当用户将其关闭时,您可以在下次启动时显示登录屏幕。

如果你不介意为你的应用程序的设置使用第三方附加组件“InAppSettingsKit”,那么看起来它们可以让你做你需要的。 我目前正在研究这个问题,但是通过快速浏览他们的文档看起来他们会允许你添加按钮以及完全自定义的子窗格视图: http : //www.inappsettingskit.com/

在该页面上,学习“IASKButtonSpecifier”和“Custom Viewcontrollers”部分。

我会在这里发布一个跟进来告诉你这对我来说是如何产生的。 我已经使用了InAppSettingsKit,并且喜欢它到目前为止。

从Github下载代码和示例应用程序: https : //github.com/futuretap/InAppSettingsKit

然后打开XCode中的InAppSettingsKit.xcworkspace并研究它们如何实现各种不同类型的设置条目。 他们绝对支持你所寻找的东西。 这真的令人印象深刻。

埃里克