sudo ifconfig lo0 alias 10.254.254.254
{
"name": "Listen for Xdebug",
"type": "php",
"request": "launch",
func scrollViewWillEndDragging(_ scrollView: UIScrollView, withVelocity velocity: CGPoint, targetContentOffset: UnsafeMutablePointer<CGPoint>) { | |
// Page width used for estimating and calculating paging. | |
let pageWidth = (self.frame.width) - interIntemMargin | |
// Make an estimation of the current page position. | |
let approximatePage = scrollView.contentOffset.x/pageWidth | |
// Determine the current page based on velocity. | |
let currentPage = (velocity.x < 0.0) ? floor(approximatePage) : ceil(approximatePage) |
import UIKit | |
class LeftAlignedCollectionViewFlowLayout: UICollectionViewFlowLayout { | |
override func layoutAttributesForElements(in rect: CGRect) -> [UICollectionViewLayoutAttributes]? { | |
guard let superArray = super.layoutAttributesForElements(in: rect), | |
let attributes = NSArray(array: superArray, copyItems: true) as? [UICollectionViewLayoutAttributes] else { return nil } | |
var leftMargin = sectionInset.left | |
var maxY: CGFloat = -1.0 |
import Foundation | |
import RxSwift | |
enum Either<T> { | |
case success(T) | |
case error(Swift.Error) | |
var successResult: T? { | |
switch self { | |
case .success(let result): |
import Foundation | |
enum Either<T> { | |
case success(T) | |
case error(Swift.Error) | |
var successResult: T? { | |
switch self { | |
case .success(let result): | |
return result | |
case .error(_): |
#Reduce App Size
#Merge using strategie | |
git checkout --ours ( --theirs ) filename | |
#Restart merge | |
git checkout -m FILE |
Adopting Clean Swift : http://clean-swift.com/clean-swift-ios-architecture/
Adopting RxSwift : https://github.com/ReactiveX/RxSwift
Marble RX Diagrams : http://rxmarbles.com/
Swift Package Manager iOS : https://gist.github.com/nathanborror/4ecb16bcb1ae0bd11e7eed043c6cd8bd [ Not tested ]
// | |
// Style.swift | |
// Mouce | |
// | |
// Created by Célian MOUTAFIS on 22/07/2016. | |
// Copyright © 2016 mouce. All rights reserved. | |
// mouce.fr | |
import Foundation | |
import UIKit |