保存iOS 8自定义键盘的首选项

时间:2015-04-06 15:01:52

标签: ios nsuserdefaults ios8-extension ios8.2

我找不到任何教程或指南来向我展示如何使用我的自定义iOS 8键盘保存首选项。

我有不同的皮肤,用户可以循环到所有皮肤。但是,如果用户关闭键盘然后将其重新加载,它将加载初始皮肤。

我知道其他键盘已经找到了加载Skins的方法,并记住选择了哪一个。

我的键盘也有2种不同的布局

QWERTY和DVORAK

我还想保存该偏好设置,以便用户在我的应用中更改其选择。

键盘在Swift / Obj-C中完成(不确定是否重要)

2 个答案:

答案 0 :(得分:2)

<强> 1。为您的主机应用和自定义键盘创建应用组

选择主机应用的目标,转到功能,滚动到应用组,然后单击“+”添加一个。输入您的群组名称。

对键盘的目标执行相同操作,但现在只需勾选最近添加的应用程序组即可添加组。

<强> 2。现在您可以使用NSUserDefaults存储&amp;与您的主机应用分享数据

存储数据:

_userDefaults = [[NSUserDefaults alloc] initWithSuiteName:@"group.app-group-name"];
[_userDefaults setObject:@"theme-dark" forKey:@"KeyboardTheme"]; // save data

恢复数据:

_userDefaults = [[NSUserDefaults alloc] initWithSuiteName:@"group.app-group-name"];
_theme = [_userDefaults objectForKey:@"KeyboardTheme"];
if ([theme isEqualToString:@"theme-dark"])
{
    ...
}

- 使用常数&amp; NS_ENUM而不是比较字符串。

- 必须激活完全访问权限。

Apple Resources: head for “Sharing Data with Your Containing App“

答案 1 :(得分:0)

我知道我需要使用NSUserDefaults,但不知道如何实现它。