Chuyển đến nội dung chính

Bài đăng

Đang hiển thị bài đăng từ Tháng 7, 2018

[iOS][Swift] VND currency formatter

[iOS][Swift] VND currency formatter static func formatCurrency( _ inputNumber: NSNumber , symbol: String = "VND" ) -> String {     let formatter = NumberFormatter (numberStyle: . currency )     formatter. currencySymbol = symbol     formatter. currencyGroupingSeparator = ","     formatter. locale = Locales . vietnam     formatter. numberStyle = . currency     formatter. positiveFormat = "#,##0 ¤"     return formatter. string (from: inputNumber) ?? String (format: "%@%@" , AppConstant . Character . space160 , symbol)   } Đoạn formatter.positiveFormat chính là ép ký tự currencySymbol luôn ở bên phải (vd: 1,000,000 VND) thay vì nó sẽ hiển thị VND 1,000,000 trên một vài thiết bị. Tham khảo bài viết này để hiểu rõ thêm về NumberFormatter

UICollectionView set number or columns

#1. Subclassing  UICollectionViewFlowLayout  and using  UICollectionViewFlowLayout 's  itemSize  property ColumnFlowLayout.swift: import UIKit class ColumnFlowLayout : UICollectionViewFlowLayout { let cellsPerRow : Int init ( cellsPerRow : Int , minimumInteritemSpacing : CGFloat = 0 , minimumLineSpacing : CGFloat = 0 , sectionInset : UIEdgeInsets = . zero ) { self . cellsPerRow = cellsPerRow super . init () self . minimumInteritemSpacing = minimumInteritemSpacing self . minimumLineSpacing = minimumLineSpacing self . sectionInset = sectionInset } required init ?( coder aDecoder : NSCoder ) { fatalError ( "init(coder:) has not been implemented" ) } override func prepare () { super . prepare () guard let collectionView = collectionView else { return } let marginsAndInsets = sectionInset . left + sectionInset . right + coll