如何添加按钮到settings.bundle?

时间:2012-07-06 05:43:36

标签: iphone objective-c ios cocoa-touch

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

enter image description here

3 个答案:

答案 0 :(得分:5)

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

答案 1 :(得分:4)

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

  

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

     

标题:标题类型显示一个   只读字符串值。您可以使用此类型以只读方式显示   偏好值。 (如果偏好包含神秘或非直观   值,此类型允许您将可能的值映射到自定义字符串。)   这种类型的关键是PSTitleValueSpecifier。

     

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

     

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

     

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

     

群组:群组类型用于组织群组   对单个页面的首选项。组类型不代表a   可配置的偏好。它只包含一个标题字符串   在一个或多个可配置首选项之前显示。该   此类型的键是PSGroupSpecifier。

     

子级:窗格子窗格类型   让用户导航到新的首选项页面。你使用这种类型   实现分层首选项。有关您的更多信息   配置和使用此首选项类型,请参阅“分层”   首选项。“此类型的密钥是PSChildPaneSpecifier。

答案 2 :(得分:-1)

如果您不介意使用第三方插件" InAppSettingsKit"对于您应用的设置,它看起来可以让您做您需要的事情。我目前正在研究这个问题,但是通过快速浏览文档,看起来它们可以让您添加按钮以及完全自定义的子窗格视图:http://www.inappsettingskit.com/

在该页面上,研究" IASKButtonSpecifier"和#34;自定义Viewcontrollers"。

我会在这里发布一个跟进通知,让您知道这对我有何影响。我已经使用了InAppSettingsKit,并且喜欢它。

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

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

埃里克