Swiftpack.co - SwiftUI-Plus/TextView as Swift Package

Swiftpack.co is a collection of thousands of indexed Swift packages. Search packages.
See all packages published by SwiftUI-Plus.
SwiftUI-Plus/TextView 1.1.0
Provides a SwiftUI multi-line TextView implementation including support for auto-sizing. (iOS)
⭐️ 62
🕓 2 years ago
iOS
.package(url: "https://github.com/SwiftUI-Plus/TextView.git", from: "1.1.0")

DEPRECATED

This library is now deprecated in favour of a more complete and SwiftUI friendly TextEditor backport:

https://github.com/shaps80/SwiftUIBackports

See it in action here: https://twitter.com/shaps/status/1654972428286668800?s=20

TextEditor Backport


TextView

Also available as a part of my SwiftUI+ Collection – just add it to Xcode 13+

Provides a SwiftUI multi-line TextView implementation with support for iOS v13+

WIP

  • Improved formatting support

Features

  • Configure all properties via modifiers
  • Multi-line text
  • Placeholder
  • No predefined design, full-flexibility to design in Swift UI
  • UIFont extensions to give you SwiftUI Font APIs
  • Auto-sizes height to fit content as you type

Example

TextView($text)
    .placeholder("Enter some text") { view in
        view.foregroundColor(.gray)
    }
    .padding(10)
    .overlay(
        RoundedRectangle(cornerRadius: 10)
            .stroke(lineWidth: 1)
            .foregroundColor(Color(.placeholderText))
    )
    .padding()

Installation

The code is packaged as a framework. You can install manually (by copying the files in the Sources directory) or using Swift Package Manager (preferred)

To install using Swift Package Manager, add this to the dependencies section of your Package.swift file:

.package(url: "https://github.com/SwiftUI-Plus/TextView.git", .upToNextMinor(from: "1.0.0"))

Other Packages

If you want easy access to this and more packages, add the following collection to your Xcode 13+ configuration:

https://benkau.com/packages.json

Swiftpack is being maintained by Petr Pavlik | @ptrpavlik | @swiftpackco | API | Analytics