JVFloatLabeledTextField
JVFloatLabeledTextField
是第一个实现被称为 "浮动标签模式" 的 UX 模式的实现。
由于移动设备上的空间限制,通常仅依靠占位符作为字段标签的手段。这会带来 UX 问题,即在用户开始填写表单后,没有标签存在。
这个 UI 组件库包含一个 UITextField
和 UITextView
的子类,旨在通过在字段填充文本后将占位符转换为浮动标签来改善用户体验。
概念归功于 Matt D. Smith (@mds), 以及他的 原始设计
此组件正式支持 iOS 7 及以上版本。
通过 CocoaPods 入门
sudo gem install cocoapods
在你项目的目录中创建一个 Podfile
pod init
将以下内容添加到你的 Podfile
项目的目标中
pod 'JVFloatLabeledTextField'
然后使用 pod install
运行 CocoaPods。
最后,在你的项目中包含 JVFloatLabeledTextField.h
和 JVFloatLabeledTextView.h
。
通过 Carthage 入门
brew update
brew install carthage
在你项目的目录中创建一个包含以下内容的 Cartfile
github "jverdi/JVFloatLabeledTextField"
然后运行 carthage 使用 carthage update
,并将 JVFloatLabeledText.framework
从 Carthage/Build/iOS
目录添加到你的项目中。
最后,将 JVFloatLabeledText.h
包含到您的项目中。
#import <JVFloatLabeledText/JVFloatLabeledText.h>
其他参考资料
浮标标签模式起源 - Matt D. Smith
浮标标签模式 - Brad Frost
谷歌材质设计 - 浮标标签 - 谷歌
端口和替代实现
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 插件 - Matt Powell
JavaFX - Andy Till
Swift - Dirk Fabisch
Swift - Fahim Farook
Swift - Neeraj Kumar
Swift - Jimmy Jose
Swift - Skyscanner (Daniel Langh, Gergely Orosz, Raimon Lapuente)
ObjC - Arthur Ariel Sabintsev
ObjC - Rob Phillips
4D - Maurice Inzirillo
Appcelerator Titanium - The Smiths
B4i - Erel Uziel
添加了端口?请告诉我 - @jverdi