iOS:如何实现联系人应用程序的功能

时间:2014-02-21 04:08:57

标签: ios iphone objective-c uitableview

所以我浏览了论坛,似乎无法找到适合我的困境的答案,我发现了非常相似的答案,但我觉得我仍然落后于提供的解决方案。是的我是iOS的新手我有Objective-c的基本知识和使用X代码,不要以为我是一个完全的菜鸟,但我很可能对你们很多人。

所以我正在尝试创建一个有效模仿iPhone上的联系人应用程序的应用程序。

我正在使用主详细信息应用程序模板,因此主VC具有主表,详细信息VC用于显示信息。

  1. 在详情VC中,联系人应用程序是否使用带有静态单元格的tableview来显示信息?

  2. 如果1的答案为是,那么如何在tableview中获取静态单元格以让用户编辑数据字段。据我了解,“编辑”tableview单元格的唯一方法是给它一个“删除”或“插入”选项。

  3. 我知道要开始我需要使用setEditing:animated:方法将视图更改为“编辑”模式,这很好,它操纵实际的表让用户编辑数据。

    如果使用tableview不是我应该采取的方法,请告诉我,如果我在正确的轨道上,我只是要求一些指导。

    不幸的是,我没有“代表”发布我的意思的图像,以使其更清晰。 我想从“联系信息表”转到相同“联系信息表”的可编辑版本,显然可以通过单击编辑按钮在编辑/完成之间切换,具体取决于模式。

    提前感谢。

3 个答案:

答案 0 :(得分:0)

使用表格视图很好,你有很多想要投入的内容但是你应该注意允许用户在像Contacts这样的应用程序中编辑/输入的内容不是标签(这是什么默认情况下为UITableViewCell。每个单元格都添加了UITextFieldUITextView作为子视图,这就是实际编辑的内容。

这个问题实际上已经被多次提出过,所以这里是许多相关答案的起点和实际的实施细节:

https://stackoverflow.com/search?q=uitextfield+uitableviewcell

答案 1 :(得分:0)

联系人应用程序将tableView用于列表和详细信息视图。细节可能是使用动态原型制作的,因为它允许轻松添加和删除行。

因此,我建议您选择动态原型,并将Dima的答案纳入textFields和textViews。你可能会得到的结果是:

  • UITableViewControllers的2个子类列表和详细信息
  • 每个唯一行设计(原型)的UITableViewCell的子类

您可以使用AutoLayout在IB中完全管理单元格原型的设计,您只需要为每个单元格分配自定义设计的唯一标识符和UITableViewCell类的子类,您可以在其中控制拖动以创建单个文本字段的IBOutlet能够在tableview控制器的代码中引用它们。

答案 2 :(得分:0)

在IOS7 iPhone应用程序中 - 细节视图不完全是1个tableview,而是一个带有几个嵌入式tableview和一些动态生成链接的视图,具体取决于联系人记录(ABPerson)的属性。详细信息视图也有自己的详细信息视图,具体取决于属性类型。 2个表视图中的单元格都是自定义视图单元格,所有这些都可以在UIKit中完成,特别是使用UITableview UIView和UITableviewcell类。如果您知道ABPerson记录背后的数据结构(类似字典),则可以更好地理解这些。

注意:如果您想要处理格式的构建方式或联系人数据本身,则不清楚。如果您想处理手机的联系人 - 请点击此处:https://developer.apple.com/library/ios/documentation/ContactData/Conceptual/AddressBookProgrammingGuideforiPhone/Introduction.html

有两个框架,一个是Addressbook框架,如果您需要从手机获取联系人数据,您必须处理它。另一个是Adressbook UI框架,它预先构建了数据库的接口,因此您不必担心编写表格视图等。