Skip to content

Instantly share code, notes, and snippets.

View vladimir-bebeshko's full-sized avatar

Vladimir Bebeshko vladimir-bebeshko

  • Zaporizhzhya, Ukraine
View GitHub Profile
@jplazcano87
jplazcano87 / createDoneButton.swift
Created December 28, 2015 15:13
Add Done Button to Numeric pad iOS (Swift)
@IBOutlet weak var txtNumber: UITextField!
override func viewDidLoad()
{
super.viewDidLoad()
//--- add UIToolBar on keyboard and Done button on UIToolBar ---//
self.addDoneButtonOnKeyboard()
}
@joerick
joerick / main.m
Last active December 19, 2018 09:35
Weak KVO example
#import <Foundation/Foundation.h>
#import <objc/runtime.h>
@interface Person : NSObject
@property (strong) NSString *name;
@end
@interface Observer : NSObject
@haruair
haruair / pre-commit-swiftlint.sh
Created December 5, 2016 13:25
Git Client-side pre-commit hook for SwiftLint
#!/bin/bash
#
# hook script for swiftlint. It will triggered when you make a commit.
#
# If you want to use, type commands in your console.
# $ ln -s ../../pre-commit-swiftlint.sh .git/hooks/pre-commit
# $ chmod +x .git/hooks/pre-commit
LINT=$(which swiftlint)
@ejmartin504
ejmartin504 / StackableWebView.swift
Created March 13, 2017 16:58
WKWebView that resizes itself
import Foundation
import WebKit
// See https://developer.apple.com/library/content/documentation/Swift/Conceptual/BuildingCocoaApps/AdoptingCocoaDesignPatterns.html for more details.
private var observerContext = 0
class StackableWebView: WKWebView {
// Keep track of height which will change when the view is loaded.
var webViewHeight: CGFloat = 0.0
@morishin
morishin / 1_playground.swift
Last active February 26, 2021 10:27
Circular UIView with drop shadow (using UIBezierPath)
import UIKit
import PlaygroundSupport
let container = UIView(frame: CGRect(x: 0, y: 0, width: 500, height: 200))
container.backgroundColor = .lightGray
let buttonRadius: CGFloat = 50
let buttonSize = CGSize(width: buttonRadius * 2, height: buttonRadius * 2)
let buttonPath = UIBezierPath(arcCenter: CGPoint(x: buttonRadius, y: buttonRadius), radius: buttonRadius, startAngle: 0, endAngle: CGFloat.pi * 2, clockwise: true)
@candostdagdeviren
candostdagdeviren / pre-commit
Last active December 27, 2024 14:24
Git Pre-Commit hook with SwiftLInt
#!/bin/bash
#Path to swiftlint
SWIFT_LINT=/usr/local/bin/swiftlint
#if $SWIFT_LINT >/dev/null 2>&1; then
if [[ -e "${SWIFT_LINT}" ]]; then
count=0
for file_path in $(git ls-files -m --exclude-from=.gitignore | grep ".swift$"); do
export SCRIPT_INPUT_FILE_$count=$file_path
@nolanw
nolanw / URLRequest+MultipartFormData.swift
Last active October 5, 2023 14:31
Swift multipart/form-data
// Public domain - https://gist.github.com/nolanw/dff7cc5d5570b030d6ba385698348b7c
import Foundation
extension URLRequest {
/**
Configures the URL request for `multipart/form-data`. The request's `httpBody` is set, and a value is set for the HTTP header field `Content-Type`.
- Parameter parameters: The form data to set.
@joshdholtz
joshdholtz / .env
Last active July 10, 2025 15:46
Using Dotenv and environment variables with fastlane
STUFF = this is some stuff
@IanKeen
IanKeen / LayoutGuideProvider.swift
Created October 31, 2017 11:57
Extension for constraints pointing to either the view or safeAreaLayoutGuide depending on availability
protocol LayoutGuideProvider {
var leadingAnchor: NSLayoutXAxisAnchor { get }
var trailingAnchor: NSLayoutXAxisAnchor { get }
var leftAnchor: NSLayoutXAxisAnchor { get }
var rightAnchor: NSLayoutXAxisAnchor { get }
var topAnchor: NSLayoutYAxisAnchor { get }
var bottomAnchor: NSLayoutYAxisAnchor { get }
var widthAnchor: NSLayoutDimension { get }
var heightAnchor: NSLayoutDimension { get }
var centerXAnchor: NSLayoutXAxisAnchor { get }
@danurna
danurna / AttachingObserver.swift
Last active December 19, 2018 09:35
AttachingObserver (Weak KVO)
// Based on https://gist.github.com/joerick/a0b87607e69071fa6a3c
class AttachingObserver: NSObject {
typealias ChangeHandler = (NSObject, [NSKeyValueChangeKey: Any]?) -> Void
weak var observedObject: NSObject?
let keyPath: String
let changeHandler: ChangeHandler
init(observe object: NSObject, keyPath: String, changeHandler: @escaping ChangeHandler) {
self.observedObject = object
self.keyPath = keyPath