An implemantation of "Float Label Pattern" of Material Design in Swift programming language.
EGFloatingTextField is available through CocoaPods and Carthage. To install it, simply add the following lines to your Podfile:
use_frameworks!
pod "EGFloatingTextField"
Or add the following lines to your Cartfile:
github "enisgayretli/EGFloatingTextField" "master"
Import dependency
import PureLayout
Initialize the textfield and add it as a subview
let emailLabel = EGFloatingTextField(frame: CGRectMake(8, 64, CGRectGetWidth(self.view.bounds) - 16, 48))
// set as floatinglabel
emailLabel.floatingLabel = true
// set the placeholder
emailLabel.setPlaceHolder("Email")
// set the validation type there are two options at the moment, Email and Number.
emailLabel.validationType = .Email
// add as subview
self.view.addSubview(emailLabel)
Create custom validator for textfield
Add new case for EGFloatingTextFieldValidationType enum
enum EGFloatingTextFieldValidationType {
case Email
case Number
case X
}
Create validation block for validationtype
private var xValidationBlock : EGFloatingTextFieldValidationBlock
Implement the validation block in commitInit Method
func commonInit(){
self.xValidationBlock = ({(text:String, inout message: String) -> Bool in
....
})
.....
}
Enis Gayretli, [email protected]
EGFloatingTextField is available under the MIT license. See the LICENSE file for more info.