Thunkable Docs
Build an AppDrag and Drop DocsSnap to Place DocsAcademy
Drag and Drop
Drag and Drop
  • What is Thunkable?
  • 🗺️Getting Started
    • Gen AI
    • Getting Started Guide
    • Keyboard Shortcuts
    • Undo Redo
    • Thunkable Account
      • Account Management
    • Preview and Test your App
    • Versioning
    • Data Sources
      • Google Sheets Data Source
      • Airtable Data Source
      • Webflow Data Source
      • Local Table Data Source
    • Project Collaboration
      • Organizations
    • 🎓Sample Apps & Tutorials
      • Thunkable Community Forums
      • Sample Apps
      • Video Tutorials
        • Thunkable Live App
          • How to Test and Troubleshoot with Thunkable Live App
        • Data Source Tutorials
          • Connecting to Data Sources
            • Google Sheets
            • Local Table
          • Create Data in a Thunkable Data Source
          • Read Data in a Thunkable Data Source
          • Update Data in a Thunkable Data Source
          • Delete Data in a Thunkable Data Source
        • User Auth & Management
          • Firebase
            • User Sign-Up, Sign-In, and Auth
            • User Sign Out and Password Reset
          • Google
            • User Sign-Up, Sign-In, Sign-Out, and Auth
          • Apple
            • User Sign-Up, Sign-In, Sign-Out, and Auth
        • Projects
          • How to Save Versions of Your Thunkable Project
          • How to Copy and Customize Public or Sample Thunkable Projects
        • User Interface & Design
          • Screens
            • Save and Reuse Thunkable Screens
            • Change Thunkable Screens with a Button Click
            • Create Scrollable Screens in Your Thunkable App
          • Navigators
            • How to Use the Thunkable Stack Navigator
            • How to Use Thunkable Top and Bottom Tab Navigators
            • How to Use the Thunkable Drawer Navigator
            • Combine Figma Frames with Thunkable Navigators
          • Components
            • How to Use the Visibility Property to Create Modals in Thunkable
          • Data Visualization
            • Customize a Data Viewer
          • Text
            • Implement Text Input Validation
        • Alerts & Notifications
          • Display Alert Messages in Your Thunkable App
          • How to Create Three-Button Alert Messages
        • Files
          • Cloudinary
            • Store and Access Cloudinary Files in Your Thunkable App
        • Camera
          • How to Use the Device’s Camera
          • How to Use the Device’s Video Camera
          • Use the Device’s Camera as a QR or Barcode Scanner
        • Realtime Databases
          • Firebase
            • How to Read Data in a Firebase Realtime Database
            • How to Update Data in a Firebase Realtime Database
        • Advanced Blocks
          • Connect Your Thunkable App to a Web API
        • Thunkable Academy
          • Building Your First Thunkable App
            • Getting Started with Thunkable
            • How to Design a Thunkable App
            • How to Connect a Thunkable App to a Data Source
            • How to Make A Thunkable App Interactive with Blocks
          • Thunkable No Code App Creation Basics
            • Thunkable UI Components and App Features
            • Understanding Thunkable's Drag and Drop Block Builder
            • Design, Develop, Debug, and Deploy Your App
        • Hour of Code
          • 2021 - Build an Informational App
          • 2022 - Build a Scavenger Hunt App
          • 2023 - Build a Translator and Text-to-Speech App
        • App Building
          • How to Build a Translation App in Thunkable
          • How to Create an Image Recognition App with Thunkable
          • How to Create a Text-to-Speech App in Thunkable
  • 🎨App Design
    • User Interface (UI) Components
      • Basic Components
        • Button Component
        • Label Component
        • Rich Text Component
        • Image Component
        • Text Input Component
        • Layout Component
        • Group Component
      • Data Components
        • Simple List Component
        • Data Viewer Components
          • Data Viewer List Component
          • Data Viewer Grid Component
          • Custom Data Viewer
      • Input Components
        • Switch Component
        • Slider Component
        • Checkbox Component
        • Date Input Component
        • Time Input Component
      • Media Components
        • Animation Component
        • Video Component
        • Loading Icon Component
      • Embed Components
        • Web Viewer Component
        • Map Component
        • Canvas Component
        • PDF Reader Component
        • Rating Component
      • Modules
        • Introduction
        • User Guide
      • Generative AI
    • Screens
      • Save and Reuse Screens
      • Improve Thunkable Load Time
    • Navigators
      • Top Tab Navigator
      • Bottom Tab Navigator
      • Drawer Navigator
      • Stack Navigator
    • Figma Integration
  • 🛠️Blocks
    • Thunkable Blocks Overview
    • Core Blocks
      • Control Blocks
      • Logic Blocks
      • Math Blocks
      • Text Blocks
      • Lists Blocks
      • Color Blocks
      • Device Blocks
      • Objects Blocks
      • Variables Overview
        • Connect a Firebase Realtime Database
        • Variables Blocks
      • Functions Blocks
    • App Features Blocks
      • Speech Blocks
      • Sound Blocks
      • Share Blocks
      • Camera Blocks
      • Files Blocks
      • Sign In Blocks
        • User Sign Up, Sign In, and Authentication with Firebase
        • User Sign Up, Sign In, and Authentication with Google
        • User Sign Up, Sign In, and Authentication with Apple
      • Location Blocks
      • Push Notification Blocks
      • In-App Purchase Blocks (with RevenueCat)
      • Data Sources Blocks
      • Alerts Blocks
      • Timer Blocks
      • Sensors Blocks
        • Gyroscope
        • Magnetometer
        • Accelerometer
        • Location Sensor
      • Ads by AdMob
    • Advanced Blocks
      • Web APIs Blocks
        • CORS Policy
        • 🆓No Auth APIs
          • Update Data in a Data Source
          • CRUD Operations
          • Setting Headers
        • 📊Charting APIs
          • Create a chart template
          • Charting in Thunkable
      • Bluetooth Low Energy Blocks
      • OpenAI Services ChatGPT Integration Blocks
      • "Any Component" Blocks
      • JavaScript Web Bridge
  • ⚙️Settings
    • App Settings
      • Tablet View
    • Assets
    • Cloud Variable Viewer
    • Manage your Projects
      • My Projects Page
      • Thunkable Projects
      • Duplicate Project
      • Share Your App
      • Download Your App
        • Download Your App on iOS
        • Download Your App on Android
      • Add to Home Screen
      • Managing Project Storage
      • App Data Privacy
      • Delete Project
  • 📱Publishing
    • Overview
    • Publish to the Apple App Store
      • User Guide
      • Troubleshooting
      • Review Process
      • Tracking Usage Description
    • Publish to Google Play Store
      • User Guide
      • Troubleshooting
      • Review Process
    • Publish as a Web App
      • User Guide
      • Custom Domains
      • Troubleshooting
    • Testing
      • Testing on iOS via TestFlight
      • Testing on Android
    • Troubleshooting
      • Publishing Checklist
      • Generate Screenshots
  • 🎮Gaming
    • Gaming Overview
      • Canvas Label
      • Sprites
      • Sprite Gallery
    • Gaming Blocks
      • Events
      • Motion
      • Looks
      • Direction
      • Sensing
      • Add & Remove
      • Stage
  • 🗃️Additional Resources
    • Release Notes
      • Release Notes 2025
      • Release Notes 2024
      • Release Notes 2023
    • Troubleshooting
      • Can't Sign in to Thunkable?
      • FAQs
    • Minimum Requirements
    • Bugs and Product Feedback
    • App Services and Emulators
Powered by GitBook
On this page
  • Overview
  • Video Tutorial
  • How to Implement Text Input Validation in Thunkable
  • Properties
  • Text Input
  • Advanced Properties
  • Layout
  • Style
  • Text Input Blocks
  • Event Blocks
  • Properties Blocks

Was this helpful?

Export as PDF
  1. App Design
  2. User Interface (UI) Components
  3. Basic Components

Text Input Component

PreviousImage ComponentNextLayout Component

Last updated 2 months ago

Was this helpful?

Overview

The text input component is a field where app users can enter text, such as a name or email address.

Video Tutorial

How to Implement Text Input Validation in Thunkable

In this tutorial, we’ll implement text input validation to disable a button until text input conditions are met.

You need to make your screen scrollable to prevent the text input from moving up when the keyboard appears.

Properties

Text Input

Property
Data Type
Description

Hint

text

The prompt text the user sees when the text input is empty (eg. Type Email).

Text

text

Populated text of the text input.

Keyboard

select from list [default, email address, numeric, phone pad]

The keyboard style provided to a user when they tap into the text input. If none are selected, it will be the default standard keyboard.

Secure Text Entry

true/false

Toggle whether the input text is obscured as a user types (suitable for entering passwords and other sensitive information).

Font

text

Font Italic (web app only)

true/false

Select whether hint and text are shown in italics.

Underline (web app only)

true/false

Select whether the hint and text are underlined.

Strikethrough (web app only)

true/false

Apply strikethrough formatting to the hint and text.

Writing Direction (iOS and web app only)

select from icons

Set whether text should be written left-to-right or right-to-left.

Font Size

number in pixels

Set whether text should be written left-to-right or right-to-left.

Letter Spacing

number in pixels

Spacing between letters in pixels.

Advanced Properties

Property
Value
Description

Editable

true/false

Toggle whether the user can edit the text.

Multiline

true/false

Toggle whether the user can enter multiple lines of text.

Auto Focus

true/false

Toggle whether the text input field is automatically in focus when the screen opens (i.e. the user doesn't need to tap into the field to focus).

Max Length (Android and iOS only)

number

Set the maximum number of lines of text your user can enter.

Clear Button Mode (iOS only)

select from list [never, while-editing, unless-editing, always]

Toggle when an iOS user has the option to clear the text input's text.

Input Color

Color

The color of the text input's text.

Background Color

color

The background color of the text input field.

Hint Text Color

color

The color of the text input's hint.

Selection Color (Android and iOS only)

color

The highlight color when a user selects a section of text.

Layout

Property
Value
Description

X

coordinate value

Position of the upper left corner of the text input on the X-axis, where the left side of the screen is X=0.

Y

coordinate value

Position of the upper left corner of the text input on the Y-axis, where the top of the screen is Y=0.

Height

number in pixels

The text input's height is defined by a custom number of pixels.

Width

number in pixels

The text input's width is defined by a custom number of pixels.

Resize Mode

Stretch

Stretches the text input to fit the dimensions of the device's screen.

Resize Mode

Float in Place

Renders the text input in the same aspect ratio as the design, regardless of the device size.

Style

Property
Value
Description

Visible

true/false

Toggle whether users can see the text input.

Border Style

select from list [solid, dotted, dashed]

Style of text input's border.

Border Color

color

Color of text input's border.

Border Width

number in pixels

The width of the text input's border is defined by a custom number of pixels.

Border Radius

number in pixels

The radius of the text input's border’s corners is defined by a custom number of pixels.

Shadow Color

color

The text input's shadow is the color selected.

Shadow Opacity

number between 0 and 100

The opacity of the text input's shadow.

Shadow Radius

number in pixels

The radius of the text input's shadow’s corners is defined by a custom number of pixels.

Shadow Offset

number in pixels

How far the text input's shadow should be offset, in height and width, is defined by a custom number of pixels.

Text Input Blocks

To access the blocks specific to the text input component:

  1. On the Design tab, add a Text Input component to a screen.

  2. Navigate to the Blocks tab.

  3. In the component tree on the left, click the name of the text input component.

  4. A drawer of text input-specific blocks opens.

Event Blocks

When Text Input Click

This event fires when the user clicks on the text input component.

When Text Input Unfocus

This event fires when the component loses focus, i.e. the user clicks on another component.

When Text Input Submit

This event fires when the enter or submit button is pressed on the device keyboard.

When Text Input Changes

This event fires whenever a character is added to or removed from the text input (i.e. whenever there is a change to the content of the text input).

Properties Blocks

There are two types of property blocks: dark green "set" and light green "get" blocks. The specific blocks available vary according to the UI component.

The dark green set blocks allow you to change the component's properties using blocks. For example, if you don't want a button to be enabled for a user until they've typed a set number of characters into a text input component, you can use the button's dark green set button's disabled status block.

The light green get blocks allow you to access the properties of a component (e.g. color, font, width, text, etc.).

Set the font for the hint and text properties. Options can be found here: .

🎨
Google Fonts