Skip to content

Instantly share code, notes, and snippets.

@50percentgrey
50percentgrey / UIFontDescriptor.swift
Last active March 13, 2021 20:01
Table of Fonts iOS - Accessability
extension UIFontDescriptor {
static let fontSizeTable: [UIFont.TextStyle: [UIContentSizeCategory: CGFloat]] = [
.largeTitle: [
.accessibilityExtraExtraExtraLarge: 60,
.accessibilityExtraExtraLarge: 56,
.accessibilityExtraLarge: 52,
.accessibilityLarge: 48,
.accessibilityMedium: 44,
.extraExtraExtraLarge: 40,
.extraExtraLarge: 38,
@50percentgrey
50percentgrey / print.swift
Created September 13, 2018 12:56
Print fonts
UIFont.familyNames.forEach({ familyName in
let fontNames = UIFont.fontNames(forFamilyName: familyName)
print(familyName, fontNames)
})
@50percentgrey
50percentgrey / gist:85c175d485c9e28e2e7a76b2818cda56
Created August 15, 2018 00:38
Rx Playground XCode 9.2 ~> High Sierra
post_install do |installer|
installer.pods_project.build_configurations.each do |config|
config.build_settings.delete('CODE_SIGNING_ALLOWED')
config.build_settings.delete('CODE_SIGNING_REQUIRED')
end
end
@50percentgrey
50percentgrey / .swiftlint.yml
Created April 18, 2018 02:27
SwiftLint rules
disabled_rules: # rule identifiers to exclude from running
- line_length
- vertical_whitespace
- trailing_whitespace
excluded: # paths to ignore during linting. Takes precedence over `included`.
- Carthage
- Pods
@50percentgrey
50percentgrey / .gitignore
Created April 18, 2018 01:54
iOS gitignore
## Build generated
build/
DerivedData/
## Various settings
*.pbxuser
!default.pbxuser
*.mode1v3
!default.mode1v3
@50percentgrey
50percentgrey / joined.swift
Created March 21, 2018 17:43
joined for AttributedString
// split / join for attributed string
extension Sequence where Iterator.Element: NSAttributedString {
func joined(separator: NSAttributedString = NSAttributedString(string: "")) -> NSAttributedString {
var isFirst = true
return self.reduce(NSMutableAttributedString()) {
(r, e) in
if isFirst {
isFirst = false
}
@50percentgrey
50percentgrey / localized.swift
Created December 27, 2017 16:40
Localized String Extension
extension String {
func localized(bundle: Bundle = .main, tableName: String = "Localizable") -> String {
return NSLocalizedString(self, tableName: tableName, bundle: bundle, value: "**\(self)**", comment: "")
}
}
// if string is not localized it will print **key** on debug
https://github.com/lyft/set-simulator-location
@50percentgrey
50percentgrey / angles.swift
Created October 21, 2017 21:32
Math series: Angles
// angle between two points
extension CGPoint {
func angle(to point: CGPoint) -> CGFloat {
let p = CGPoint(x: point.x - x, y: point.y - y)
return atan2(p.y, p.x)
}
}
// radians and degrees convertion
@50percentgrey
50percentgrey / distance.swift
Created October 21, 2017 17:36
Math series: Distance between 2 points
// Pythagorean theorem
// √(x1 - x2)2 + (y1 - y2)2
//
extension CGPoint {
func distance(from point: CGPoint) -> CGFloat {
let xDist = point.x - x
let yDist = point.y - y
return sqrt((xDist * xDist) + (yDist * yDist))
}
}