Files
libr-ios/librx/DashViewController.swift
2015-11-30 23:02:06 +08:00

108 lines
4.1 KiB
Swift

//
// DashViewController.swift
// librx
//
// Created by Yunlong Zheng on 15/9/19.
// Copyright (c) 2015年 librx. All rights reserved.
//
import Foundation
import UIKit
class DashViewController: UIViewController {
@IBOutlet weak var shareButton: UIBarButtonItem!
private var loginStateChange: LoginStateHandler?
var pageMenu : CAPSPageMenu?
var menu: NSArray = ["信息流", "最新", "热门"]
override func viewDidLoad() {
super.viewDidLoad()
self.navigationController?.navigationBar.tintColor = UIColor.whiteColor()
self.navigationController?.navigationBar.titleTextAttributes = [NSForegroundColorAttributeName: UIColor.whiteColor()]
loginStateChange = LoginStateHandler(handler: { [weak self](state) -> () in
if state == .LoggedIn {
self!.shareButton.image = UIImage(named: "Plus")
} else {
self!.shareButton.image = nil
}
})
let storyboard = UIStoryboard(name: "Main", bundle: nil)
let storysViewController1 = storyboard.instantiateViewControllerWithIdentifier("StoriesTableViewController") as! StorysTableViewController
storysViewController1.postSection = .Default
storysViewController1.title = "信息流"
let storysViewController2 = storyboard.instantiateViewControllerWithIdentifier("StoriesTableViewController") as! StorysTableViewController
storysViewController2.postSection = .RecentTimeLine
storysViewController2.title = "最新"
let storysViewController3 = storyboard.instantiateViewControllerWithIdentifier("StoriesTableViewController") as! StorysTableViewController
storysViewController3.postSection = .HotTimeLine
storysViewController3.title = "热门"
var controllerArray : [UIViewController] = []
controllerArray.append(storysViewController1)
controllerArray.append(storysViewController2)
controllerArray.append(storysViewController3)
// Customize menu (Optional)
let parameters: [CAPSPageMenuOption] = [
.MenuItemSeparatorWidth(4.3),
.ScrollMenuBackgroundColor(UIColor.whiteColor()),
.ViewBackgroundColor(UIColor(red: 247.0/255.0, green: 247.0/255.0, blue: 247.0/255.0, alpha: 1.0)),
.BottomMenuHairlineColor(UIColor(red: 20.0/255.0, green: 20.0/255.0, blue: 20.0/255.0, alpha: 0.1)),
.SelectionIndicatorColor(UIColor(red: 78/255.0, green: 171/255.0, blue: 162/255.0, alpha: 1.0)),
.MenuMargin(5.0),
.MenuHeight(40.0),
.SelectedMenuItemLabelColor(UIColor(red: 78/255.0, green: 171/255.0, blue: 162/255.0, alpha: 1.0)),
.UnselectedMenuItemLabelColor(UIColor.lightGrayColor()),
.MenuItemFont(UIFont(name: "HelveticaNeue-Medium", size: 14.0)!),
.SelectionIndicatorHeight(1.0),
.MenuItemSeparatorPercentageHeight(0.1)
]
// Initialize scroll menu
pageMenu = CAPSPageMenu(viewControllers: controllerArray, frame: CGRectMake(0.0, 60.0, self.view.frame.width, self.view.frame.height), pageMenuOptions: parameters)
self.view.addSubview(pageMenu!.view)
}
override func viewDidAppear(animated: Bool) {
super.viewDidAppear(animated)
loginStateChange = LoginStateHandler(handler: { [weak self](state) -> () in
if state == .LoggedIn {
self!.shareButton.image = UIImage(named: "Plus")
} else {
self!.shareButton.image = nil
}
})
}
@IBAction func unwindToHome(segue: UIStoryboardSegue) {
}
@IBAction func startSharePost() {
if let _ = LocalStore.accessToken() {
let createPostViewController = UIStoryboard(name: "Main", bundle: nil)
.instantiateViewControllerWithIdentifier("NewPostNavigationController") as! UINavigationController
self.presentViewController(createPostViewController, animated: true, completion: nil)
}
}
}