JVFloatLabeledTextField
is the first implementation a UX pattern that has come to be known the “Float Label Pattern”.
Due to space constraints on mobile devices, it is common to rely solely on placeholders as a means to label fields. This presents a UX problem, in that, once the user begins to fill out a form, no labels are present.
This UI component library, which includes both a UITextField
and UITextView
subclass, aims to improve the user experience by having placeholders transition into floating labels that hover above the fields after they are populated with text.
Credits for the concept to Matt D. Smith (@mds), and his original design:
The component is officially supported for iOS 7 and greater.
Getting started via Cocoapods
1
|
|
Create a Podfile
in your project directory:
1
|
|
Add the following to your Podfile
project’s target:
1
|
|
Then run cocoapods with pod install
.
Finally, include JVFloatLabeledTextField.h
and JVFloatLabeledTextView.h
in your project.
Getting started via Carthage
1 2 |
|
Create a Cartfile
in your project directory that contains:
1
|
|
Then run carthage with carthage update
and add JVFloatLabeledText.framework
to your project from the Carthage/Build/iOS
directory.
Finally, include JVFloatLabeledText.h
in your project:
1
|
|
Additional References
How the Float Label Pattern Started - Matt D. Smith
Float Label Pattern - Brad Frost
Material Design - Floating Labels - Google
Ports and Alternate Implementations
Android - Henrik Sandström
Android - Kaushik Gopal
Android - Kevin Johnson
Xamarin.iOS - Greg Shackles
Xamarin.Android - Johan du Toit
CSS Jonathan Snook
JQuery / Zepto.js - Achmad Mahardi
JQuery - Mike Mitchell
AngularJS - Dave Ackerman
Bootstrap plugin - Matt Powell
JavaFX - Andy Till
Swift - Dirk Fabisch
Swift - Fahim Farook
Swift - Neeraj Kumar
Swift - Jimmy Jose
ObjC - Arthur Ariel Sabintsev
ObjC - Rob Phillips
4D - Maurice Inzirillo
Appcelerator Titanium - The Smiths
Added a port? Let me know - @jverdi