复制Apple Contacts编辑屏幕

时间:2016-11-04 19:39:48

标签: ios iphone swift autolayout storyboard

我想重新创建Apple Contacts编辑屏幕。显然,最简单的方法是创建UITableView并填写信息。但是,我可以做一些关于如何实现包含联系人图像的UITableView顶部的指针。此图片显示在多个UITableViewCells的左侧,并覆盖其中许多图片。

目前,我尝试通过向UITableView添加自定义标题视图并简单地将图像添加到视图的左侧并在右侧添加UITextField来实现此功能。但是我担心可能会有更多的iOS方式"要解决这个问题。

我不打算将此屏幕用于联系人,所以如果我可以在Contacts Framework中使用特定的方法或对象,那么它可能不会与我的用例相关。

如何使用Apple最佳实践最好地实现这一目标?

附图显示了我想要复制的内容。

enter image description here

1 个答案:

答案 0 :(得分:0)

您可以通过编程方式添加图像。

let image: UIImage = UIImage(named: "YourImageNameInAssets")!
let imgFrame: CGRect = CGRect(x: 0, y: 0, width: self.bounds.width, height: self.bounds.height)
imageView = UIImageView(frame: imgFrame)
view.addSubview(imageView)

更改x和y位置以将其放在您喜欢的屏幕上的任何位置,并确保资源中的图像已经是您放置的屏幕的正确尺寸和尺寸,否则您必须以编程方式对其进行尺寸调整同样。

另一个选择是制作一个UIViewController,里面有两个UITableViews和一个UIImageView。如果使用此方法,则可以在相同的函数中实现两个UITableViews,并根据表视图标记或restoreIdentifier提供不同的实现。

如果您只想要一个UITableView或者在UITableViewController中,另一个选项是取消选中tableViewCell上的clipViewToBounds,Cell的contentView和Image本身。完成此操作后,将图像放在顶部单元格中,它将无缝地溢出到其他单元格中。确保你也正确地缩进了你想看的单元格上的分隔符,好像它们被移到一边。

相关问题