我正在开发一个聊天应用程序,它通过推送通知和p2p连接发送消息(不通过短信或电子邮件)。
我想创建一个视图控制器,它顶部有一些自定义视图,然后是它下面的消息线程。消息应以类似于Messages
iPhone应用程序的方式呈现。
是否有可能重用Apple代码(我可以使用ViewController / View吗?我可以以某种方式使用MFMessageComposeViewController
吗?)或者我应该重新发明轮子并自己实现?
答案 0 :(得分:8)
有几种开源解决方案可以相当准确地重新创建消息界面:
当然,你也可以自己创建界面,方法是使用UITableView来容纳自定义单元格,这些单元格会在其中绘制语音气泡和文本。
答案 1 :(得分:1)
UICollectionViewController可用于创建UI等消息。
答案 2 :(得分:1)
我最近发布了一个解决这个问题的开源项目。 Chat SDK可在Github上的 MIT许可下找到。该库具有以下您可能会觉得有用的功能:
BChatViewController.m
语音气泡消息视图类似于消息应用。在这里,您还可以看到如何处理键盘显示和隐藏事件以在键盘顶部添加文本输入框的示例。
BMessageCell.m
这是主要的消息泡泡类。这里有一些功能可以动态地为消息气泡着色(+(UIImage *) bubbleWithImage: withColor:
)并添加一个语音气泡尾部。
BMessageLayout.m
有用的实用程序函数,用于确定文本区域的高度。
BTextInputView.m
这是一个可调整大小的文本输入框,浮动在键盘上方。
用户界面非常模块化,这意味着您应该能够相对轻松地将其添加到您的应用程序中。
此库还支持Firebase开箱即用,这意味着您不需要构建自己的系统来使用推送通知发送消息。