iTextField ⌨️

A fully-wrapped `UITextField` that works entirely in SwiftUI. 🦅

Get Started | Examples | Customize | Install |

CI


## Get Started 1. [Install](https://github.com/benjaminsage/iTextField/blob/master/INSTALL.md) `iTextField` 2. Add `iTextField` to your project ```swift import SwiftUI import iTextField struct ContentView: View { @State var text: String = "" var body: some View { iTextField("Placeholder", text: $text) } } ``` 3. Customize your `iTextfield` ## Examples ### Starter drawing Customize your text field with built-in modifiers. ```swift import SwiftUI import iTextField struct ContentView: View { @State var text: String = "" var body: some View { iTextField("Placeholder", text: $text) .accentColor(.purple) .fontFromUIFont(UIFont(name: "Avenir", size: 40)) .keyboardType(.URL) .returnKeyType(.done) .disableAutocorrection(true) .autocapitalization(.none) .padding() } } ``` ### Jump text fields Use the optional `isEditing` binding parameter to programmatically jump between text fields. ```swift import SwiftUI import iTextField struct ContentView: View { @State var text1: String = "" @State var text2: String = "" @State var isSecondEditing: String = "" var body: some View { iTextField("First", text: $text1) .onReturn { isSecondEditing = true } iTextField("Second", text: $text2, isEditing: $isSecondEditing) } } ``` ## Customize `iTextField` has two required parameters: 1️⃣ a placeholder and 2️⃣ a `text` state. You can optionally pass in a 3️⃣rd an `isEditing` binding if you would like to programmatically focus or unfocus the text field. iTextField also supports a variety of modifiers. **Example**: Change the foreground color, accent color, and text alignment with the following code block: ```swift iTextField("Placeholder", text: $text, isEditing: $isEditing) .foregroundColor(.purple) .accentColor(.green) .multilineTextAlignment(.leading) ``` Use this exhaustive input list to customize your text field. Modifier | Description --- | --- `.fontFromUIFont(_ font: UIFont?)` | Modifies the text field’s **font** from a `UIFont` object. 🔠 `.foregroundColor(_ color: Color?)` | Modifies the **text color** 🎨 of the text field. `.accentColor(_ accentColor: Color?)` | Modifies the **cursor color** 🌈 of the text field `.multilineTextAlignment(_ alignment: TextAlignment)` | Modifies the **text alignment** of a text field. ↔️ `.textContentType(_ textContentType: UITextContentType?)` | Modifies the **content type** of a text field. 📧 ☎️ `.disableAutocorrection(_ disable: Bool?)` | Modifies the text field’s **autocorrection** settings. `.keyboardType(_ type: UIKeyboardType)` | Modifies the text field’s **keyboard type**. 📩 `.autocapitalization(_ style: UITextAutocapitalizationType)` | Modifies the text field’s **autocapitalization** style. 🔡 `.returnKeyType(_ type: UIReturnKeyType)` | Modifies the text field’s **return key** type. ✅ `.characterLimit(_ limit: Int?)` | Sets the maximum amount of characters allowed in this text field. `.isSecure(_ isSecure: Bool)` | Modifies the text field’s **secure entry** settings. 🔒 `.clearsOnBeginEditing(_ shouldClear: Bool)` | Modifies the **clear-on-begin-editing** setting of a text field. ❌ `clearsOnInsertion(_ shouldClear: Bool)` | Modifies the **clear-on-insertion** setting of a text field. 👆 `.showsClearButton(_ showsButton: Bool)` | Modifies whether and when the text field **clear button** appears on the view. ⭕️ ❌ `.passwordRules(_ rules: UITextInputPasswordRules)` | Modifies the text field's **password rules** 🔒. Sets secure entry to `true`. `.spellChecking(_ spellChecking: Bool? = nil)` | Modifies whether the text field should check the user's **spelling**. `.smartDashes(_ smartDashes: Bool? = nil)` | Modifies whether the text field includes **smart dashes**. `.smartInsertDelete(_ smartInsertDelete: Bool? = nil)` | Modifies whether the text field uses **smart insert-delete**. `.smartQuotes(_ smartQuotes: Bool? = nil)` | Modifies whether the text field uses **smart quotes**. `.disabled(disabled: Bool)` | Modifies whether the text field is **disabled**. ✋ `.onEditingBegan(perform action: { code })` | Modifies the function called when text editing **begins**. ▶️ `.onEdit(perform action: { code })` | Modifies the function called when the user makes any **changes** to the text in the text field. 💬 `.onEditingEnded(perform action: { code })` | Modifies the function called when text editing **ends**. 🔚 `.onReturn(perform action: { code })` | Modifies the function called when the user presses the **return** key. ⬇️ ➡️ `.onClear(perform action: { code })` | Modifies the function called when the user **clears** the text field. ❌ ## Install Use the Swift package manager to install. Find instructions [here](https://github.com/benjaminsage/iPages/blob/main/INSTALL.md)😀 ## Help As always, if you have any questions about iPhoneNumberField, we are available 24/7 to help.
| | Reach us at | | --- |:---:|:---: 📞 | +1 (415) 735-4464 | **Call** 📧 | hello@iswiftui.com | **Email** 📲 | +1 (415) 735-4464 | **Text**