easy_text_fild 0.0.4
easy_text_fild: ^0.0.4 copied to clipboard
Easy-to-use Flutter TextFormField with custom styling, icons, and borders for rapid app development.
import 'package:easy_text_fild/easy_text_fild.dart';
import 'package:flutter/material.dart';
void main() {
runApp(const MyApp());
}
/// Root widget of the application
class MyApp extends StatelessWidget {
const MyApp({super.key});
@override
Widget build(BuildContext context) {
return MaterialApp(
debugShowCheckedModeBanner: false,
title: 'EasyTextFild Demo',
theme: ThemeData(
colorScheme: ColorScheme.fromSeed(seedColor: Colors.blue),
useMaterial3: true,
),
home: Scaffold(
appBar: AppBar(
title: const Text('EasyTextFild Example'),
),
body: SingleChildScrollView(
padding: const EdgeInsets.all(16.0),
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
// =========================
// Test 1: Password Field
// =========================
EasyTextFild(
hintText: 'Enter Your Password',
labelText: 'Password',
obscureText: true,
prefixIcon: const Icon(Icons.lock),
suffixIcon: const Icon(Icons.visibility),
borderRadius: BorderRadius.circular(16),
fillColor: Colors.grey.shade200,
onChanged: (value) {
print('Password field changed: $value');
},
),
const SizedBox(height: 20),
// =========================
// Test 2: Email Field
// =========================
EasyTextFild(
hintText: 'Enter Your Email',
labelText: 'Email',
keyboardType: TextInputType.emailAddress,
prefixIcon: const Icon(Icons.email),
fillColor: Colors.grey.shade100,
borderRadius: BorderRadius.circular(12),
onChanged: (value) {
print('Email field changed: $value');
},
),
const SizedBox(height: 20),
// =========================
// Test 3: Multi-line Bio Field
// =========================
EasyTextFild(
hintText: 'Enter your bio',
labelText: 'Bio',
maxLines: 4,
minLines: 2,
fillColor: Colors.grey.shade50,
borderRadius: BorderRadius.circular(12),
onChanged: (value) {
print('Bio field changed: $value');
},
),
const SizedBox(height: 20),
// =========================
// Test 4: Read-only Field
// =========================
EasyTextFild(
hintText: 'Read-only field',
labelText: 'Read-only',
readOnly: true,
fillColor: Colors.grey.shade300,
borderRadius: BorderRadius.circular(12),
prefixIcon: const Icon(Icons.info),
),
const SizedBox(height: 20),
// =========================
// Test 5: Disabled Field
// =========================
EasyTextFild(
hintText: 'Disabled field',
labelText: 'Disabled',
enabled: false,
fillColor: Colors.grey.shade200,
borderRadius: BorderRadius.circular(12),
),
const SizedBox(height: 20),
// =========================
// Test 6: No Border Field
// =========================
EasyTextFild(
hintText: 'No border field',
noBorder: true,
fillColor: Colors.grey.shade300,
borderRadius: BorderRadius.circular(111),
),
],
),
),
),
);
}
}