Skip to content

Instantly share code, notes, and snippets.

Avatar

Jayesh Kawli jayesh15111988

View GitHub Profile
View UIWebViewYouTubeVideos.js
<html>
<body style='margin:0px;padding:0px;'>
<script type='text/javascript' src='http://www.youtube.com/iframe_api'></script>
<script type='text/javascript'>
var ytplayer;
function timeElapsed() {
return Math.floor(ytplayer.getCurrentTime())
}
@jayesh15111988
jayesh15111988 / AccountDownloader.swift
Last active Dec 16, 2016
Swift testing with Protocols
View AccountDownloader.swift
import Foundation
import UIKit
protocol DownloadAccountProtocol {
func downloadAccount(with name: String, completion: (Person) -> ())
}
class ServerDownloader: DownloadAccountProtocol {
func downloadAccount(with name: String, completion: (Person) -> ()) {
let personDictionary: [String: String] = [:] // Dictionary JSON downloaded from server
View .swift
private var searchTimer: Timer?
func searchBar(_ searchBar: UISearchBar, textDidChange searchText: String) {
if let searchTimer = searchTimer {
searchTimer.invalidate()
}
searchTimer = Timer.scheduledTimer(timeInterval: 0.4, target: self, selector: #selector(self.reload(timer:)), userInfo: searchText, repeats: false)
}
func reload(timer: Timer) {
@jayesh15111988
jayesh15111988 / swift-error-handling.swift
Created Jan 23, 2017
A Sample code to demonstrate Swift error handling
View swift-error-handling.swift
import Foundation
enum PasswordError: Error {
case TooShort
case NoNumber
case CustomMessage(message: String)
}
class PasswordChecker {
View indirectEnum.swift
// This
public indirect enum BrickDimension {
case Ratio(ratio: CGFloat)
case Fixed(size: CGFloat)
case Fill
case Auto(estimate: BrickDimension)
case Orientation(landscape: BrickDimension, portrait: BrickDimension)
case HorizontalSizeClass(regular: BrickDimension, compact: BrickDimension)
case VerticalSizeClass(regular: BrickDimension, compact: BrickDimension)
@jayesh15111988
jayesh15111988 / SwiftyTableView.swift
Created Feb 20, 2017
A tableview with Swifty style
View SwiftyTableView.swift
import UIKit
// Reference: https://medium.com/swift-programming/upgrade-your-tableviews-with-loading-state-in-swift-1fdce34ada77#.w4sg0dwhk
class SwiftyTableView: UIViewController, UITableViewDelegate, UITableViewDataSource {
let tableView: UITableView = UITableView()
let activityIndicator: UIActivityIndicatorView = UIActivityIndicatorView()
var tableState = TableState<String>.Loading {
didSet {
View ScrollViewSupportViewController.swift
//
// ScrollViewSupportViewController.swift
// Sample
//
// Created by Jayesh Kawli on 2/23/19.
// Copyright © 2019 Jayesh Kawli. All rights reserved.
//
import UIKit
View ScrollViewAutolayoutCreator.swift
//
// AutolayoutScrollView.swift
// Sample
//
// Created by Jayesh Kawli on 2/23/19.
// Copyright © 2019 Jayesh Kawli. All rights reserved.
//
import UIKit
View MyNotificationCenter.swift
//
// MyNotificationCenter.swift
// MyNotificationCenterImplementation
//
// Created by Jayesh Kawli on 10/12/19.
// Copyright © 2019 Jayesh Kawli. All rights reserved.
//
import Foundation
@jayesh15111988
jayesh15111988 / TransactionOperation.swift
Last active Oct 25, 2020
This is the Swift implementation to perform basic database operations
View TransactionOperation.swift
//
// TransactionOperation.swift
// NotificationCenterImplementation
//
// Created by Jayesh Kawli on 10/18/20.
// Copyright © 2020 Jayesh Kawli. All rights reserved.
//
import Foundation