Skip to content

Instantly share code, notes, and snippets.


Tiago Martinho tiagomartinho

View GitHub Profile
tiagomartinho / Add View
Created Nov 25, 2015
Swift Add View Extension
View Add View
import UIKit
extension UIView {
func addView(viewToAdd:UIView){
viewToAdd.frame = self.bounds
viewToAdd.autoresizingMask = [UIViewAutoresizing.FlexibleWidth, UIViewAutoresizing.FlexibleHeight]
View Apple TV Tech Talks Berlin
Mindset, best practices, etc.
The future of TV vs Mobile, different rates of innovation
Apps: Media (Netflix, youtube, HBO, etc.) -> optimised for the apple tv
Zoova, fitness
Gilt shopping
Games, disney infinity (like console gaming)
Does not commute
Alto adventure
Madeira , digital comic book
View UIViewController+GATracker.swift
import UIKit
extension UIViewController {
func trackScreen(name: String) {
if let tracker = GAI.sharedInstance().defaultTracker {
tracker.set(kGAIScreenName, value: name)
let screenView = GAIDictionaryBuilder.createScreenView().build()
tracker.send(screenView as [NSObject : AnyObject])
View XCTests on Device
instruments -s devices
xcodebuild -workspace $WORKSPACE.xcworkspace -scheme $SCHEME -destination 'platform=iOS,id=$AN_ID' clean test

Keybase proof

I hereby claim:

  • I am tiagomartinho on github.
  • I am tiago32 ( on keybase.
  • I have a public key ASDsmbBpPeSZxQa7jRAyyTSZ4wk1DsQ73ECM72FAeiDEjgo

To claim this, I am signing this object:

tiagomartinho / Fastfile
Last active May 2, 2018
Fastlane Configuration
View Fastfile
fastlane_require ‘dotenv’
before_all do
cocoapods(clean: true, repo_update: true)
run_tests(workspace: ENV[‘WORKSPACE’], scheme: ENV[‘SCHEME’])
desc “Push a new release build to the App Store”
lane :release do
increment_build_number(build_number: ENV[‘BITRISE_BUILD_NUMBER’], xcodeproj: ENV[‘PROJECT’])
build_app(workspace: ENV[‘WORKSPACE’], scheme: ENV[‘SCHEME’], configuration: “Release”, clean: true)
upload_to_app_store(skip_metadata: true, skip_screenshots: true, platform: ENV[‘PLATFORM’], app_identifier: ENV[‘APP_IDENTIFIER’], run_precheck_before_submit: false)
View .env.ios
View ThemeName.swift
enum ThemeName: String {
case light, dark, black
var theme: Theme {
switch self {
case .light:
return LightTheme()
case .dark:
return DarkTheme()
View Theme.swift
import UIKit
protocol Theme {
var name: ThemeName { get }
var tintColor: UIColor { get }
var barStyle: UIBarStyle { get }
var keyboardAppearance: UIKeyboardAppearance { get }
var backgroundColor: UIColor { get }
var secondaryBackgroundColor: UIColor { get }
var negativeBackgroundColor: UIColor { get }
View LightTheme.swift
import UIKit
struct LightTheme: Theme {
var name: ThemeName {
return .light
var tintColor: UIColor {
return #colorLiteral(red: 0.2392156869, green: 0.6745098233, blue: 0.9686274529, alpha: 1)