IOS Utilities Library for Swift
All types of swift utilities and necessary settings included in this library.
Just add this line in your pod file:
pod 'iOSUtilitiesSource', :git => 'https://github.com/hasnine/iOSUtilitiesSource.git'
First import library to your ViewController
#import iOSUtilitiesSource
Save your data in preferences with line:
PreferencesUtils.saveStringData(data: "YOUR_DATA", dataName: "YOUR_KEY")
and for get this saved data :
PreferencesUtils.getSavedStringData(dataName: "YOUR_KEY")
*With code:
UINavigationBar.appearance().barTintColor = .black
UINavigationBar.appearance().tintColor = .white
UINavigationBar.appearance().titleTextAttributes = [NSAttributedString.Key.foregroundColor: UIColor.white]
UINavigationBar.appearance().isTranslucent = false
*With library:
NavigationBarColorChange.changeNavigationBarColor(barTintColor: .black, tintColor: .white,forgroundColor: UIColor, isTranslucent: true)
*Input date format : "yyyy-MM-dd HH:mm:ss" *OutPut Date format: "EEEE, MMM dd hh:mm a"
*Date format with code:
public static func getDisplayableDateStringForPosts(inputDateString: String) -> String?{
let dateFormatterInput = DateFormatter()
dateFormatterInput.dateFormat = "yyyy-MM-dd HH:mm:ss"
let dateFormatterOutput = DateFormatter()
dateFormatterOutput.dateFormat = "EEEE, MMM dd hh:mm a"
if let date = dateFormatterInput.date(from: inputDateString) {
return (dateFormatterOutput.string(from: date))
} else {
return nil
}
}
*With library:
Utilities.getDisplayableDateStringForPosts(inputDateString: yyyy-MM-dd HH:mm:ss)
Add
IuFloatingTextFiledPlaceHolder
class in your textfield's custom class from storyboard.
Output:
Add this line in viewDidLoad:
hideKeyboardWhenTappedAround()
Add this line in your code, where you want to show your message:
showToast(message: "YOUR_MESSAGE")
SimpleGradientView :
Add view in your storyboard
From Story board Attributes inspector - set first , mid and End color
Provide direction value to change Gradient angle
GIF Image loader
Import 'iOSUtilitiesSource' in your class to use GifImage .
Drag your image in project folder
Gif image needed to be placed in folder instead of image asset.
Add UIimageView_Storybord_reference(name: "YOUR_GIF_NAME") in viewWillAppear / in your required method.
Add this line in your viewDidLoad():
iOSKeyboardShared.shared.keyBoardShowHide(view: self.view)
Alert toast View :
Example :
self.noticeTop("Test Notice", autoClear: true, autoClearTime: 5)
self.noticeError("Test Notice", autoClear: true, autoClearTime: 5)
self.noticeSuccess("Test Notice", autoClear: true, autoClearTime: 5)
self.noticeInfo("Test Notice")
self.noticeError("Test Notice")
self.noticeOnlyText("Test Notice")
self.clearAllNotice()
Output:
Rating View :
Add StarRatingView class in storyboards in any specific view as following image below:
Example code:
override func viewDidLoad() {
super.viewDidLoad()
startView.didFinishTouchingStarRating = { rating in
if rating == 4.0{
self.startView.text = "Status : Favoulas"
}else if rating == 3{
self.startView.text = "Status : Good"
}else{
self.startView.text = "Status : Moderate"
}
}
// Do not change rating when touched
// Use if you need just to show the stars without getting user's input
startView.settings.updateOnTouch = false
// Show only fully filled stars
startView.settings.fillMode = .full
// Other fill modes: .half, .precise
// Change the size of the stars
startView.settings.starSize = 30
// Set the distance between stars
startView.settings.starMargin = 5
// Set the color of a filled star
startView.settings.filledColor = UIColor.orange
// Set the border color of an empty star
startView.settings.emptyBorderColor = UIColor.orange
// Set the border color of a filled star
startView.settings.filledBorderColor = UIColor.orange
// Set image for the filled star
//cosmosView.settings.filledImage = UIImage(named: "GoldStarFilled")
// Set image for the empty star
//cosmosView.settings.emptyImage = UIImage(named: "GoldStarEmpty")
startView.textSize = 10
}
Output: