Skip to content

Instantly share code, notes, and snippets.

View kientux's full-sized avatar
🎯
Focusing

Kien Nguyen kientux

🎯
Focusing
  • Appfactory
  • Hanoi, Vietnam
View GitHub Profile
@vinhnx
vinhnx / uicollectionview+centerPaging.md
Created June 9, 2017 09:24
Centered Paging with Preview Cells on UICollectionView

Centered Paging with Preview Cells on UICollectionView

The proposed offset is where the collection view would stop without our intervention. We peek into this area by finding its centre as proposedContentOffsetCenterX and examine our currently visible cells to see which one’s centre is closer to the centre of that area.

import UIKit
 
class CenterCellCollectionViewFlowLayout: UICollectionViewFlowLayout {
    
    var mostRecentOffset : CGPoint = CGPoint()
@Sorix
Sorix / AsynchronousOperation.swift
Last active May 22, 2024 07:15
Subclass of NSOperation (Operation) to make it asynchronous in Swift 3, 4, 5
// Created by Vasily Ulianov on 09.02.17, updated in 2019.
// License: MIT
import Foundation
/// Subclass of `Operation` that adds support of asynchronous operations.
/// 1. Call `super.main()` when override `main` method.
/// 2. When operation is finished or cancelled set `state = .finished` or `finish()`
open class AsynchronousOperation: Operation {
public override var isAsynchronous: Bool {
@kientux
kientux / AES256Cryptor.java
Last active January 16, 2021 10:50
Encrypt and decrypt AES-256 (in CryptoJS way)
/**
* Created by kientux on 3/20/15
*/
import android.util.Base64;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
import java.security.SecureRandom;
import java.util.Arrays;
@staltz
staltz / introrx.md
Last active April 1, 2026 14:21
The introduction to Reactive Programming you've been missing
@lesleh
lesleh / TopCropImageView.java
Last active September 16, 2017 04:15
ImageView that scales like centerCrop, but instead of showing the centre of the image, it shows the top.
import android.content.Context;
import android.graphics.Matrix;
import android.util.AttributeSet;
import android.widget.ImageView;
/**
* ImageView that scales like centerCrop, but instead of showing the centre of the image, it shows the top.
*/
public class TopCropImageView extends ImageView {
public TopCropImageView(Context context) {
@adamawolf
adamawolf / Apple_mobile_device_types.txt
Last active April 1, 2026 13:31
List of Apple's mobile device codes types a.k.a. machine ids (e.g. `iPhone1,1`, `Watch1,1`, etc.) and their matching product names
i386 : iPhone Simulator
x86_64 : iPhone Simulator
arm64 : iPhone Simulator
iPhone1,1 : iPhone
iPhone1,2 : iPhone 3G
iPhone2,1 : iPhone 3GS
iPhone3,1 : iPhone 4
iPhone3,2 : iPhone 4 GSM Rev A
iPhone3,3 : iPhone 4 CDMA
iPhone4,1 : iPhone 4S
@odrobnik
odrobnik / gist:2499146
Created April 26, 2012 12:03
Convenience methods to add and animate a shadowPath
- (void)addShadowWithColor:(UIColor *)color alpha:(CGFloat)alpha radius:(CGFloat)radius offset:(CGSize)offset
{
self.layer.shadowOpacity = alpha;
self.layer.shadowRadius = radius;
self.layer.shadowOffset = offset;
if (color)
{
self.layer.shadowColor = [color CGColor];
}