在iPhone上创建类似用户界面的信息(不发送短信/电子邮件)

在iPhone上创建类似用户界面的信息(不发送短信/电子邮件),iphone,ios,Iphone,Ios,我正在开发一个聊天应用程序,它通过推送通知和p2p连接(而不是通过短信或电子邮件)发送电子邮件 我想做一个视图控制器,它在顶部有一些自定义视图,然后在它下面有消息线程。这些信息应以类似于iPhone应用程序的方式呈现 是否可以重用Apple代码(我是否可以使用ViewController/View?我是否可以以某种方式使用MFMessageComposeViewController?),或者我是否应该重新发明轮子并自行实现 UICollectionViewController可用于创建类似UI的

我正在开发一个聊天应用程序,它通过推送通知和p2p连接(而不是通过短信或电子邮件)发送电子邮件

我想做一个视图控制器,它在顶部有一些自定义视图,然后在它下面有消息线程。这些信息应以类似于iPhone应用程序的方式呈现


是否可以重用Apple代码(我是否可以使用ViewController/View?我是否可以以某种方式使用
MFMessageComposeViewController
?),或者我是否应该重新发明轮子并自行实现

UICollectionViewController可用于创建类似UI的消息

有几种开源解决方案可以相当准确地重新创建消息接口:

  • 山姆·索菲斯
  • 杰斯奎尔斯
当然,您也可以使用UITableView自己创建界面,以容纳可绘制语音气泡的自定义单元格,以及其中的文本。

我最近发布了一个开源项目来解决这个问题。可在Github上的MIT许可证下获得。该库具有以下功能,您可能会发现这些功能很有用:

BChatViewController.m

语音气泡消息视图类似于消息应用程序。在这里,您还可以看到如何处理键盘显示和隐藏事件以将文本输入框添加到键盘顶部的示例

BMessageCell.m

这是主消息气泡类。这里有一些函数可以动态地为消息气泡着色(
+(UIImage*)bubbleWithImage:withColor:
),并添加语音气泡尾部

BMessageLayout.m

用于确定文本区域高度的实用函数

btdeputView.m

这是一个浮动在键盘上方的可调整大小的文本输入框

用户界面非常模块化,这意味着您应该能够相对轻松地将其添加到应用程序中


该库还支持开箱即用,这意味着您无需构建自己的系统来使用推送通知发送消息

如果我理解正确,我需要使用自己的语音气泡图形,从头开始开发文本输入行为,或者我可以重复使用苹果做的事情吗?不,苹果没有为语音气泡等提供类。你可以在这里找到一个很棒的教程。您可以为单元格使用任何自定义UIView,布局和插入/删除单元格的所有繁重工作都已完成。(非常感谢)特里斯坦,这正是我想要的!我使用了MessagesTableViewController(更好的“快速入门”文档),它似乎工作得很好。:)嘿,没问题!几年前,我遇到了一个类似的问题,花了一周时间试图重新创建UI。。。这不是我对乐趣的定义=P