Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/107.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios iPhone应用程序中是否有用于设置首选项的库或框架?_Ios_Iphone_Forms_Settings_Key Value - Fatal编程技术网

Ios iPhone应用程序中是否有用于设置首选项的库或框架?

Ios iPhone应用程序中是否有用于设置首选项的库或框架?,ios,iphone,forms,settings,key-value,Ios,Iphone,Forms,Settings,Key Value,在iPhone上使用Settings.app并不难。事实上,Xcode为您完成了大部分工作。只需将Settings.bundle添加到您的项目中,您就可以免费使用它 目前,我正在为iPhone开发一个应用程序,它要求用户填写几个“表单”,主要是键值对、一些滑块和几个带有“下拉”菜单的模式视图。因此,类似的任务与Settings.app的功能类似 在我看来,自己做表格是一项繁重的任务,所以我想知道是否有一个框架来完成这类任务。不幸的是,苹果似乎没有提供自己的解决方案。也许有人知道web上描述最佳实

在iPhone上使用Settings.app并不难。事实上,Xcode为您完成了大部分工作。只需将Settings.bundle添加到您的项目中,您就可以免费使用它

目前,我正在为iPhone开发一个应用程序,它要求用户填写几个“表单”,主要是键值对、一些滑块和几个带有“下拉”菜单的模式视图。因此,类似的任务与Settings.app的功能类似

在我看来,自己做表格是一项繁重的任务,所以我想知道是否有一个框架来完成这类任务。不幸的是,苹果似乎没有提供自己的解决方案。也许有人知道web上描述最佳实践的框架或文章


如果您不明白我指的是哪种模式,我做了一个屏幕截图:

如果您正在进行设置,那么我建议将它们放在正确的位置并使用settings.bundle

我猜你是在做设置,尽管这对你的应用非常重要,如果他们不得不不断地从应用跳到设置再跳回来,那将是一种可怕的用户体验

当你说做这项任务很重时,你能详细说明一下吗?因为我已经做了,而且任务并不重

使用UITableViewController

对于要使用的每个单元格,输入类似于以下内容的代码:

        cell.textLabel.text = @"Last name:";
        UIFont *labelFont = [UIFont systemFontOfSize:[UIFont labelFontSize]];
        CGSize textSize = [cell.textLabel.text sizeWithFont:labelFont];
        baseRect.origin.x = textSize.width+15;
        baseRect.origin.y +=7;
        baseRect.size.width = baseRect.size.width - textSize.width - 15;
        baseRect.size.height = 23;
        UITextField *textField = [[UITextField alloc] initWithFrame:baseRect];
        textField.keyboardType = UIKeyboardTypeAlphabet;
        textField.returnKeyType = UIReturnKeyDone;
        textField.clearButtonMode = UITextFieldViewModeWhileEditing;
        textField.delegate = self;
        textField.placeholder = @"last name";
        [textField addTarget:self action:@selector(lastNameChanged:) forControlEvents:UIControlEventAllEditingEvents];
        textField.tag = 182;
        [cell.contentView addSubview:textField];    
        [textField release];

这对我来说很好地重现了你所说的界面——这里的示例是一个文本字段——但同样的代码对所有控件都很有效。

我很确定他想要的是一个从settings.bundle文件重新创建settings界面的框架,以便在settings.bundle文件中都可以有设置应用程序和应用程序中的


我还不知道这样的事情,但是,我真的可以用一个,我已经考虑写一个。

最好在应用程序中设置设置,至少在苹果让用户很容易发送到设置,然后再返回应用程序之前。如果你看一看新的3.0 UITableViewCellStyles,有一种风格是为设置一类单元格量身定做的——它将使构建一个简单的设置屏幕变得非常容易。

经过大量研究,我没有找到一个好的答案来回答我最初的问题。但现在我在github上无意中发现了这个存储库:

签出。它在几个应用程序中使用,并且(由我和其他一些人)积极维护。

您不是在重用UITableViewCells吗?如果您这样做了,您如何区分哪些文本字段调用lastNameChanged:?是的,当然textField上的标记告诉我哪个字段是哪个。此外,我还确保在回收单元格时删除与我的标记列表匹配的所有控件。在mySettings Github页面上:“mySettings不再处于活动开发中”。最后一次提交时间为2010年1月。