This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// https://hashaam.com/2017/09/02/adjust-scroll-view-content-inset-based-on-keyboard-frame | |
func adjustForKeyboardHandler(notification: Notification) { | |
// this method assumes scrollView is defined | |
guard let userInfo = notification.userInfo else { return } | |
guard let value = userInfo[UIKeyboardFrameEndUserInfoKey] as? NSValue else { return } | |
let keyboardFrame = value.cgRectValue |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// https://hashaam.com/2017/11/13/url-encode-only-unicode-characters/ | |
let originalURLString = "https://www.exampleserver.com/articles/latest/لن-تصدق-ما-يمكن-أن-تجده-في-مطبخك-فاحذر-غسل-هذه-الأداة.html" | |
let allowedCharacterSet = CharacterSet.urlFragmentAllowed | |
let urlString = originalURLString.addingPercentEncoding(withAllowedCharacters: allowedCharacterSet)! | |
let url = URL(string: urlString)! |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// https://hashaam.com/2017/11/13/adjust-baseline-of-text-using-nsattributedstring/ | |
let attributedString = NSAttributedString(string: “text", attributes: [ | |
NSFontAttributeName: font, | |
NSForegroundColorAttributeName: UIColor.white, | |
NSBaselineOffsetAttributeName: -5.0 | |
]) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// https://hashaam.com/2017/09/02/get-filename-without-extension | |
let path = "hls_a128_v4.m3u8" | |
let url = URL(string: path) | |
let filename = url?.deletingPathExtension().lastPathComponent | |
print(filename) // hls_a128_v4 | |
let fileExtension = url?.pathExtension |