Under the Bridge

Hakawai And Away

This is well worth taking a look at if you’re outgrowing UITextView’s functionality, LinkedIn is the latest company to kick out some awesome source to the community:

Introducing Hakawai – a powerful, mentions-enabled text view for iOS

Text Transformers

Hakawai provides block-based APIs for working with the contents of a text view. Text transformers are methods which take in special blocks. These blocks always take as an argument an attributed string (representing the initial state of the text), and return another attributed string (representing the final state of the text). Hakawai also supports attribute transformers, which work similarly…

Abstraction Layer

The experimental Abstraction Layer feature is a way to provide text view users with a higher-level change notification API than currently offered by the built-in UITextViewDelegate. There are five main types of notifications, each with associated data…

Extras

Hakawai comes with a host of extras, including (but not limited to):

  • An API for easily adding and removing accessory views from the text view
  • An API for temporarily locking the focus of the text view to the top or bottom of the text view
  • An API for rejecting autocorrect suggestions, and for working with the text view’s autocorrection, auto-capitalization, and spell checking state
  • A convenience API for working with characters and words at a given location
  • A custom text container and layout manager
  • Support for custom text formatting through custom attributes, including a pre-built attribute showcased in the mentions plug-in

Plug-ins

Hakawai supports plug-ins, which are code modules that can be selectively activated and deactivated at run-time to provide the text view with additional functionality…

Mentions

Mentions is a plug-in for creating ‘mentions’, annotations in a text view which might correspond to names of individuals or entities…

OK, that’s some serious UITextView enhancement. Check it out on github!

(And while you’re in the LinkedIn neighbourhood over there, background fetch scheduling library Selene is worth a gander as well.)

h/t: ManiacDev!

UPDATES:

raulriera / TextFieldEffects: “Custom UITextFields effects inspired by Codrops, built using Swift”

0