MBAutoGrowingTextView
这是一个基于自动布局的轻量级 UITextView 子类,它根据用户输入的大小自动增长和收缩,并且可以由最大和最小高度限制 - 所有这些都无需一行代码。
主要是用于 Interface builder 中,并且只与 Auto Layout 一起使用。
快速背景
自动布局是设计现代 iOS 应用的界面的一种很好的方式。然而,某些功能有时无法直接实现。其中一个例子是自动增长/收缩 UITextView。这个视图的问题在于它默认是一个可滚动的视图,这意味着它的固有大小不会根据内容变化。一种解决方案是简单地使其不可滚动,但这会阻止用户在元素达到最大高度时上下滚动。因此,MBAutoGrowingTextView 应运而生,以解决此问题。
功能
- 适用于 iOS 7,充分利用 Interface builder 和 Auto layout。
- UITextView 的高度将根据用户输入的文本数量自动增长或收缩
- 可以从 Interface builder 中定义 UITextView 的最大和最小高度
- 当达到最大高度时,UITextView 内容变为可滚动
- 无需任何代码即可实现完整功能
安装
应通过Cocoa Pods进行安装。
如果您尚未安装CocoaPods,请先安装它
sudo gem install cocoapods
pod setup
切换到您的Xcode项目目录,并创建和编辑您的 Podfile
,并列出以下行
pod 'MBAutoGrowingTextView', '~> 0.1.0'
pod install
使用.xcworkspace文件(而不是常规项目文件)在Xcode中打开您的项目
使用
如果您熟悉Auto Layout,使用方法将极其简单直观。此类通过在需要时更改“高度”约束来利用自动布局约束。它将检测任何“高度小于”或“高度大于”的约束,并确保在计算时予以考虑。