NxEnabled
  • October 21, 2023

What is NxEnabled?


It’s a fairly common case, when the enabled state of button depends on some textable elements such as TextView, TextField. So this library allows the simplest way to achive this purpose with only few lines of code.

Getting started


Typical login screen with short, beautiful validation code:

loginButton.isEnabled(by: usernameTextField, passwordTextField) { username, password in
username.characters.count > 5 && password.characters.count > 5
}

you can also combine together UITextView with UITextField‘s:

signUpButton.isEnabled(by: firstnameTextField, lastnameTextField, bioTextView) { firstname, lastname, bio in
return /* validation value */
}

So there is also oportunity to add not UI element:

  • Implement Textable protocol

  • Be a successor from NSObject

  • Not forget about dynamic label for property

  • Done.

class Object: NSObject, Textable {
dynamic var value: String?
var textKey: String {
return “value”
}
}

NOTE:

One important case is that you should clear button’s bag. It removes all observers from textable elements. Usually it needs to do in deinit method.

 

deinit {
signUpButton.clearBag()
}

Now library allows to add textable elements up to six.

Installation


CocoaPods

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

github “Otbivnoe/NxEnabled”

Run carthage update to build the framework and drag the built NxEnabled.framework into your Xcode project.

GitHub


View Github

#algolia #animation #awesemetextfield #carthage #cocoapods #currencytextfield #customtextfield #customwidgets #facetedsearch #geosearch #growingtextview #instantsearch #interfacebuilder #ios #ioslibrary #opensource #passwordtextfield #search #searchengine #searchinterface #searchsynonyms #styledtext #swift #swiftpackagemanager #textexpansion #textfield #texture #textview #tjtextfield #ui #uibutton #uikit #uitextfield #uitextfieldnavigation #uitextview #widgets
YOU MIGHT ALSO LIKE...
TvOSTextViewer

Light and scrollable view controller for tvOS to present blocks of text Description TvOSTextViewer is a view controller to present ...

TvOSSlider

TvOSSlider is an implementation of UISlider for tvOS. Description and usage TvOSSlider palliates missing an implementation of UISlider for tvOS as part ...

TvOSScribble

TvOSScribble, based on CoreML, mitigates the lack of a physical numpad area in Siri Remote implementing a handwriting gesture recognizer. ...

TvOSPinKeyboard

PIN keyboard for tvOS Description TvOSPinKeyboard is a view controller that allows easily asking for PIN codes in tvOs Requirements ...

TvOSMoreButton

📺 A tvOS button which truncates long text with '... More'. The TvOSMoreButton is a simple view which aims to ...