A UITextView subclass that adds support for multiline placeholder written in Swift

KMPlaceholderTextView

A UITextView subclass that adds support for multiline placeholder written in Swift.

Usage

You can set the value of the placeholder property just like using UITextField.

Interface Builder

  1. Drag a UITextView object onto the canvas.
  2. In the Identity inspector, set the Custom Class name to KMPlaceholderTextView.
  3. In the Attributes inspector, you can change the value of the placeholder property directly.

Code

let placeholderTextView = KMPlaceholderTextView(frame: view.bounds)
placeholderTextView.placeholder = "What's on your mind?"
view.addSubview(placeholderTextView)

Installation

CocoaPods

You can install the latest release version of CocoaPods with the following command:

$ gem install cocoapods

Simply add the following line to your Podfile:

platform :ios, '8.0' 
use_frameworks!

target '<Your Target Name>' do
  pod 'KMPlaceholderTextView', '~> 1.4.0'
end

Then, run the following command:

$ pod install

If you are encountering the following warning when using Xcode 8, please make sure to set the Module in the identity inspector of your KMPlaceholderTextView in the interface builder to KMPlaceholderTextView as well:

warning: IB Designables: Using class UITextView for object with custom class because the class KMPlaceholderTextView does not exist

Carthage

Carthage is a decentralized dependency manager that automates the process of adding frameworks to your Cocoa application.

You can install Carthage with Homebrew using the following command:

$ brew update
$ brew install carthage

To integrate KMPlaceholderTextView into your Xcode project using Carthage, specify it in your Cartfile:

github "MoZhouqi/KMPlaceholderTextView" >= 1.4

Requirements

  • iOS 7.0+
  • Xcode 10

License

KMPlaceholderTextView is released under the MIT license. See LICENSE for details.

GitHub

https://github.com/MoZhouqi/KMPlaceholderTextView