Easily create UIViewControllers for news articles similar to those in the News app.
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
Example
MRArticleViewController
.gitignore
.swift-version
.travis.yml
CHANGELOG.md
LICENSE
MRArticleViewController.podspec
README.md
_Pods.xcodeproj
preview1.png
preview2.png
preview3.png

README.md

MRArticleViewController

CI Status Version License Platform

This framework allows you to easily setup View Controllers to display News Articles inspired by those from the Apple News App. Simply set the required fields and run, and you will have a nice looking view for your articles.

Preview Preview Preview

Example

To run the example project, clone the repo, and run pod install from the Example directory first.

Requirements

  • Swift 3: use current
  • Swift 2: use v0.2.0

Installation

MRArticleViewController is available through CocoaPods. To install it, simply add the following line to your Podfile:

pod 'MRArticleViewController'

Usage

  1. Import the module
import MRArticleViewController
  1. Subclass ArticleViewController
class ViewController: ArticleViewController
  1. In viewDidLoad, set the following required properties before super.viewDidLoad():
override func viewDidLoad() {
    // required
    imageView.image = UIImage(named: "pulpfiction")!
    headline = "LA gangsters witness supposed \"Divine Intervention\""
    author = "Quentin Tarantino"
    date = NSDate()
    body = bodyText

    super.viewDidLoad()
}
  1. Optional: In viewDidLoad, set the following optional properties before super.viewDidLoad():
...

// Uses the algorithm from UIImageColors to extract the colors from the image and color the
// background, headline, author, date, and body accordingly. Defaults to false, but highly
// recommended to set to true. More on this feature below.
autoColored = true

// If you don't like the autoColor feature, you can also color each component individually
backgroundColor = UIColor.black
headlineColor = UIColor.yellow
authorColor = UIColor.orange
dateColor = UIColor.gray
bodyColor = UIColor.gray

super.viewDidLoad()

Done! 🍻

More on autoColored

This library leverages the algorithm from UIImageColors. Setting autoColor = true extracts the colors from the image and applies the

  • background color to the background
  • the primary color to the headline
  • the detail color to the date and body
  • and the secondary color to the author.

Note that UIImageColors is not a dependency, the code has just been ported into this library.

To-do

Want a feature you don't see? Submit an issue and I'll add it to the to-do list, or hack it yourself and submit a pull request.

  • Add new styles
  • Swift package manager

Author

Matthew Rigdon, rigdonmr@gmail.com

License

MRArticleViewController is available under the MIT license. See the LICENSE file for more info. Please also refer to Panic's original license for the autoColor feature.