Android development, here is the complete list of android:inputType values for both XML and Jetpack Compose, organized by category:
1. Numeric Types
Optimized for digits and calculations.
- number: Standard integer input.
- numberDecimal: Allows a decimal point.
- numberSigned: Allows a minus sign (-) for negative numbers.
- numberPassword: Numeric keypad with hidden dots for PINs.
2. Text Types
Triggers the full QWERTY keyboard with specific variations.
- text: Default plain text.
- textCapCharacters: Forces all capital letters.
- textCapWords: Capitalizes the first letter of every word.
- textCapSentences: Capitalizes the first letter of every sentence.
- textAutoCorrect: Enables system-level spell check and suggestions.
- textPassword: Standard text password (hidden characters).
- textVisiblePassword: Password field that remains readable.
- textEmailAddress: Includes the @ and .com shortcuts.
- textUri: Optimized for URLs (includes / and .com).
- textPersonName: Optimized for names.
- textShortMessage: For SMS/messaging apps.
- textLongMessage: For long-form text (emails, descriptions).
- textMultiLine: Allows the "Enter" key to create new lines.
- textNoSuggestions: Explicitly disables keyboard predictions.
3. Special Format Types
- phone: Phone dialer pad with *, #, and +.
- date: Numeric keypad for entering dates.
- time: Numeric keypad for entering time.
- datetime: Combined keypad for both date and time.
- postalAddress: Optimized for physical addresses.
4. Jetpack Compose Equivalent (KeyboardType)
If you are using
Jetpack Compose (recommended for 2026), you use the KeyboardType property:
- KeyboardType.Text
- KeyboardType.Number
- KeyboardType.Decimal
- KeyboardType.Phone
- KeyboardType.Email
- KeyboardType.Password
- KeyboardType.NumberPassword
- KeyboardType.Uri
For more technical details, visit the official Android InputType Documentation