Update: 6.0-beta6 is out! See #476 for details.
More screenshots available at CocoaControls
See the website for the list of features.
- iOS 7.0+
- ARC
Need support for iOS 6? You shouldn't. But, there's a branch for that!
git checkout iOS6_support_stable
Note: the iOS6_support_stable
branch does not include many of the latest hip and fancy features or fixes
pod 'JSQMessagesViewController'
Otherwise, drag the JSQMessagesViewController/
folder to your project. Install JSQSystemSoundPlayer
and add the QuartzCore.framework
.
NOTE:
This repo was formerly named
MessagesTableViewController
.And this pod was formerly named
JSMessagesViewController
.
For iOS 6.0 support:
pod 'JSMessagesViewController', :git => 'https://github.com/jessesquires/JSQMessagesViewController.git', :branch => 'iOS6_support_stable'
#import <JSQMessagesViewController/JSQMessages.h> // import all the things
-
Demo project
- There's a fucking sweet demo project:
JSQMessages.xcworkspace
. - Run
pod install
first.
- There's a fucking sweet demo project:
-
Model
- Your model objects should conform to the
JSQMessageData
protocol. - Your media attachment model objects should conform to the
JSQMessageMediaData
protocol. - However, you may use the provided classes:
- Model:
JSQTextMessage
andJSQMediaMessage
- Media attachments:
JSQPhotoMediaItem
,JSQLocationMediaItem
,JSQVideoMediaItem
- Model:
- Your model objects should conform to the
-
View Controller
- Subclass
JSQMessagesViewController
. - Implement the required methods in the
JSQMessagesCollectionViewDataSource
protocol. - Implement the required methods in the
JSQMessagesCollectionViewDelegateFlowLayout
protocol.
- Subclass
-
Customizing
- The demo project is well-commented. This should help you configure your view however you like.
Read the fucking docs, available here via @CocoaDocs.
Please follow these sweet contribution guidelines.
Support the development of this free, open-source library!
Donations made via Square Cash
Send $5 Just saying thanks. Here's a coffee!
Send $10 This library is great. Lunch is on me!
Send $25 This totally saved me time. Go get a nice dinner!
Send $50 I love this library. I want new features!
Send $100 I really want to support this project!
Created by @jesse_squires, a programming-motherfucker.
- Assets extracted using @0xced / iOS-Artwork-Extractor.
- Originally inspired by @soffes / SSMessagingViewController.
- Many thanks to the contributors of this project.
I initially developed this library to use in Hemoglobe for private messages between users.
As it turns out, messaging is something that iOS devs and users really want. Messaging of any kind has turned out to be an increasingly popular mobile app feature in all sorts of contexts and for all sorts of reasons. Thus, I am supporting this project in my free time and have added features way beyond what Hemoglobe ever needed.
Feel free to check out my work at Hexed Bits, or read my blog.
- Hemoglobe
- PocketSuite
- ClassDojo
- Schools App
- ChatSecure
- Kytt
- Spark Social
- Spabbit
- Elodie
- Instaply
- Loopse
- Oxwall Messenger
- FourChat
- vCinity
- Quick Text Message
- Libraries for developers
- Buhz|Hyve
- Ringring.io
- gDecide
- AwesomeChat
- ParseChat
- Jib
- Your app here
JSQMessagesViewController
is released under an MIT License. See LICENSE
for details.
Copyright © 2014 Jesse Squires.
Please provide attribution, it is greatly appreciated.