MessageDisplayKit 5.4

MessageDisplayKit 5.4

测试已测试
语言语言 Obj-CObjective C
许可协议 MIT
发布最后发布2015年10月

Jack维护。



  • Jack

一个类似微信App的IM应用,提供发送文字、图片、语音、视频、地理位置消息等功能,管理本地通讯录、分享朋友圈、漂流瓶、摇一摇等更多有趣的功能。
一个类似于微信的IM应用,支持发送文本、图片、语音、视频、地理位置消息等功能,管理本地通讯录、分享动态、漂流瓶、摇一摇等功能。
image

宝贵意见

如果有任何问题,请到GitHub创建issue,点击这里创建一个新的issue,写下您不懂的地方,我会在GitHub上给予帮助。

许多朋友表示,只看到静态库,看不到源代码。一个工作区域内,有多个使用例子,也包含了源代码,源代码请点击这里查看,以便大家都能快速查看。

大部分代码都有注释,我认为您可以通过注释理解代码。如果您不能理解代码,请随意打开一个issue,我会尽力为您解答。

非常有趣,在LeanCloud的开发者支持下,将开始全面的改进,将没有实现业务的功能与LC的后台进行对接,敬请期待哦!

组件要求 Requirements

  • iPhone4/5/6/6+/iPad,竖屏
  • Xcode6 或更高版本
  • iOS 6.0 或更高版本
  • ARC
  • 系统框架:'Foundation', 'CoreGraphics', 'UIKit', 'MobileCoreServices', 'AVFoundation', 'CoreLocation', 'MediaPlayer', 'CoreMedia', 'CoreText', 'AudioToolbox'.

Podfile

CocoaPods是推荐的方式来安装MessageDisplayKit,只需将以下行添加到Podfile

pod 'MessageDisplayKit'

然后运行pod install,然后您就完成了!

待办事项

  • 尽量删除绘制代码,因为这是导致性能下降的原因之一。
    Delete drawRect code, because of lead to lower FPS.
  • 音频转换处理,以适应多平台可用的音频、视频等数据。
    Convert audio format.
  • 搭建服务器。
    Build server
  • 模仿微信全部功能。

特性 Features

  • 1、高度可定制。
    Highly customizable.
  • 2、任意消息的大小。
    Arbitrary message sizes.
  • 3、复制&粘贴消息。
    Able to copy & paste messages.
  • 4、数据检查器(确认电话号码、链接、日期等)。
    Data detectors (recognizes phone numbers, links, dates, etc.).
  • 5、时间戳。
    Timestamps.
  • 6、头像。
    Avatars.
  • 7、向下滑动隐藏键盘。
    Swipe down to hide keyboard.
  • 8、动态调整输入文本视图类型。
    Dynamically resize input text view as you type.
  • 9、自动启用/禁用发送按钮(如果文本视图为空或不是)。
    根据文本视图的内容自动开启/关闭发送按钮。
  • 10、发送/接收声音效果。
    发送/接收声音效果。
  • 11、发送语音。
    发送语音消息。
  • 12、发送图片。
    发送照片。
  • 13、发送视频。
    发送视频。
  • 14、发送地理位置。
    发送地理位置。
  • 15、发送第三方GIF表情。
    发送第三方GIF消息。
  • 16、通用iPhone和iPad。
    支持iPhone和iPad。
  • 17、支持StoryBoard。
    支持StoryBoard功能供用户使用。
  • 18、支持下拉加载更多旧消息,处理了保持可见cell不滚动效果。支持下拉加载更多旧消息,在插入旧消息至顶部时保持可见cell静止。
  • 19、支持通讯录。
  • 20、支持朋友圈。
  • 21、支持扫一扫。
  • 22、支持摇一摇。
  • 23、支持附近的人。
  • 24、支持漂流瓶。
  • 25、支持多选联系人。
  • 26、支持新闻模板嵌套。
  • 27、支持弹出Menu菜单。
  • 28、支持游戏室展示。
  • 29、支持表情商店预览。
  • 30、核心网络层。
    核心网络层。
  • 31、核心缓存层。
    核心缓存层。
  • 32、核心数据层。
    核心数据层。
  • 33、优化TableView性能。
    优化TableView性能。
  • 34、强化GIF播放机制。
    保持GIF播放的帧率。

如何使用

轻松集成到您的项目中。

  • 1、#import "XHMessageTableViewController.h"

  • 2、必须使得XHMessageTableViewController为子类。

  • 3、实现XHMessageTableViewController委托以处理消息发送。

  • 4、实现XHMessageTableViewController数据源以处理消息来源。

  • 5、如果需要使用表情消息/插件功能/音频播放,必须实现其他委托或数据源。

  • 详细查看此示例

许可证

中文: MessageDisplayKit 是MIT协议下使用的,相关的使用协议信息可在LICENSE文件中找到。

English: MessageDisplayKit is available under the MIT license, see the LICENSE file for more information.

须知 Notes

如果您在您的项目中使用该开源组件,请通过电子邮件告诉我们您的应用程序的名称,谢谢!主要是为了互相推广,如果您的app火爆,请给予少许回报,如果您的App不火爆,或许能通过这个开源库了解到您App的一些信息!
主要目的是一个,互相推广,使用该开源库的开发者,我都会向其保证,永远免费,不涉及任何商业纠纷,请放心使用。

If you use this open source components in your project, please Email us to notify us the name of your application(s). Thanks!

哪些应用使用了这个开源库

这里会列出所有使用该开源库的App列表。
leanchat-ios,LeanCloud 提供一站式后端云服务,从数据存储、实时聊天、消息推送到移动统计,覆盖应用开发的多方面后端需求。
家信-导购员,家信是专属家居导购员的商务沟通APP。家信App,将家居消费者与最近导购员及时对接。消费者微信在线随时随地与导购员接触沟通;导购员通过家信在线为消费者提供各种资讯、商品、咨询、导购服务,辅助消费者决策,促进消费购买,提升服务体验。

使用的第三方组件

感谢开发者

我家App的主要程式Aevit提供了技术支持,他的github地址,点击我家App下载安装,如果看到里面有一个好的效果,可以协商开源。

感谢微信App给予我鼓励,我参考了很多框架设计问题、也提供了许多素材,但是请网友不要直接使用素材,我不知道是否会引起侵权的问题,所以请自重,我这里只是模仿微信,而不是攻击。使用该开源库所导致的所有侵权关系与我无关,我只是提供学习机会。

警告

请不要将本工程的微信图片资源文件用于商业用途,如果不遵守规则,而产生的法律责任,一律与我无关。代码按照上文描述的License和Notes来使用。

致谢

感谢jessesquires,他创建了JSMessagesViewController,我的聊天列表UI工作就是基于此。