Skip to content

Instantly share code, notes, and snippets.

View naveedmcs's full-sized avatar
👨‍💻
Nothing is interesting if You are not interested.

Muhammad Naveed naveedmcs

👨‍💻
Nothing is interesting if You are not interested.
View GitHub Profile
@naveedmcs
naveedmcs / DictionaryEncodingDecoding.swift
Last active October 12, 2020 11:03
DictionaryEncoder / DictionaryDecoder that wrap JSONEncoder, JSONDecoder and JSONSerialization, that also handle encoding / decoding strategies… run this code on Xcode playground and do more experiments
import UIKit
class DictionaryEncoder {
private let encoder = JSONEncoder()
var dateEncodingStrategy: JSONEncoder.DateEncodingStrategy {
set { encoder.dateEncodingStrategy = newValue }
get { return encoder.dateEncodingStrategy }
}
@naveedmcs
naveedmcs / facebookLogin.swift
Last active March 27, 2020 09:31
facebookLogin_IOS
//Make sure that u are using latest facebook sdk 2020
//pod 'FBSDKCoreKit'
//pod 'FBSDKLoginKit'
extension LoginVC {
@IBAction func facebook(_ sender: Any) {
self.loginWithReadPermissions()
@naveedmcs
naveedmcs / Parsing JSON in Swift.txt
Created December 16, 2019 08:47
Parsing JSON in Swift
https://grokswift.com/json-swift-4/
https://grokswift.com/decodable-with-alamofire-4/
@naveedmcs
naveedmcs / MovieListTableViewDataSource.swift
Created December 5, 2019 06:35 — forked from pierosifuentes/MovieListTableViewDataSource.swift
MovieListTableViewDataSource & Delegate
protocol MovieListTableViewDelegate: class {
func showMovieDetail(_ movie: Movie)
}
class MovieListTableViewDataSource: NSObject, UITableViewDataSource, UITableViewDelegate {
private weak var delegate: MovieListTableViewDelegate?
private let tableView: UITableView
var movies: [Movie] = [] {
didSet {
@naveedmcs
naveedmcs / NVImagePickerCropController.swift
Created November 27, 2019 09:10
NVImagePickerCropController Reusable Class for IOS Swift, To use this class pod 'CropViewController' is required
import UIKit
import CropViewController
// pod 'CropViewController'. (required)
protocol NVImagePickerCropControllerDelegate: class {
func didSelect(image: UIImage)
}
class NVImagePickerCropController: NSObject {
@naveedmcs
naveedmcs / NvImagePicker.swift
Created November 27, 2019 08:30
NvImagePicker Native reusable class for IOS Swift
protocol NvImagePickerDelegate: class {
func didSelect(image: UIImage)
}
class NvImagePicker: NSObject {
static let shared = NvImagePicker()
private var delegate: NvImagePickerDelegate?
private struct alertPicker {
@naveedmcs
naveedmcs / AppNetwork.swift
Created November 26, 2019 13:22
AppNetwork API Different type of URL Handling
//globle use in application
// example AppNetwork.current.baseURL
internal struct AppNetwork {
//used in APIBaseManager
private struct domainType {
static let dev = "https://www.projects.mytechnology.ae/homemade-supplier"
//static let staging = "http://www.homemadesupplier.ae"
@naveedmcs
naveedmcs / queryString.swift
Last active November 13, 2019 05:24
Query String Params handling in swift
//"Query Params Example- by nvd"
extension URL {
/// Returns a new URL by adding the query items, or nil if the URL doesn't support it.
/// URL must conform to RFC 3986.
func appending(_ queryItems: [URLQueryItem]) -> URL? {
guard var urlComponents = URLComponents(url: self, resolvingAgainstBaseURL: true) else {
// URL is not conforming to RFC 3986 (maybe it is only conforming to RFC 1808, RFC 1738, and RFC 2732)
return nil
}
@naveedmcs
naveedmcs / elementsEqual.swift
Created November 12, 2019 05:51
check elements are equal between two array
import UIKit
//@nvd
//test example: check elements are equal between two array
struct Person {
var feature: Int?
var selectedId : Int?
}