Skip to content

Easily create UIViewControllers for news articles similar to those in the News app.

License

Notifications You must be signed in to change notification settings

mrigdon-zz/MRArticleViewController

Repository files navigation

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.

About

Easily create UIViewControllers for news articles similar to those in the News app.

Resources

License

Stars

Watchers

Forks

Packages

No packages published