
¾Æ·¡¿¡´Â Flutter¿¡¼ Form validation ¹× TextFormField¸¦ »ç¿ëÇÏ¿© »ç¿ëÀÚ ÀÔ·Â °ªÀ» °ËÁõÇÏ´Â ¹æ¹ý¿¡ ´ëÇÑ »ùÇà Äڵ尡 Æ÷ÇԵǾî ÀÖ½À´Ï´Ù. ÀÌ ÄÚµå´Â °£´ÜÇÑ ·Î±×ÀÎ ÆûÀ» °ËÁõÇÏ´Â ¿¹Á¦·Î ÀÛ¼ºµÇ¾ú½À´Ï´Ù.
dart
Copy code
import 'package:flutter/material.dart';
void main() => runApp(MyApp());
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
home: Scaffold(
appBar: AppBar(
title: Text('Form Validation Sample'),
),
body: MyForm(),
),
);
}
}
class MyForm extends StatefulWidget {
@override
_MyFormState createState() => _MyFormState();
}
class _MyFormState extends State<MyForm> {
final _formKey = GlobalKey<FormState>();
String _email;
String _password;
@override
Widget build(BuildContext context) {
return Form(
key: _formKey,
child: Column(
crossAxisAlignment: CrossAxisAlignment.center,
children: <Widget>[
TextFormField(
decoration: InputDecoration(labelText: 'Email'),
validator: (value) {
if (value.isEmpty) {
return 'Please enter some text';
}
return null;
},
onSaved: (value) {
_email = value;
},
),
TextFormField(
decoration: InputDecoration(labelText: 'Password'),
obscureText: true,
validator: (value) {
if (value.isEmpty) {
return 'Please enter some text';
}
if (value.length < 6) {
return 'Password must be at least 6 characters';
}
return null;
},
onSaved: (value) {
_password = value;
},
),
Padding(
padding: const EdgeInsets.symmetric(vertical: 16.0),
child: ElevatedButton(
onPressed: () {
if (_formKey.currentState.validate()) {
_formKey.currentState.save();
// TODO: Implement login logic using _email and _password
}
},
child: Text('Submit'),
),
),
],
),
);
}
}

À§ÀÇ ÄÚµå´Â °£´ÜÇÑ ·Î±×ÀÎ ÆûÀ» ¸¸µé°í, »ç¿ëÀÚ°¡ À̸ÞÀϰú ºñ¹Ð¹øÈ£¸¦ ÀÔ·ÂÇϸé ÀÔ·Â °ªÀÇ À¯È¿¼ºÀ» °Ë»çÇÕ´Ï´Ù. »ç¿ëÀÚ°¡ À̸ÞÀÏ ¶Ç´Â ºñ¹Ð¹øÈ£¸¦ ÀÔ·ÂÇÏÁö ¾Ê°Å³ª ºñ¹Ð¹øÈ£°¡ 6ÀÚ ¹Ì¸¸ÀÎ °æ¿ì ¿¡·¯ ¸Þ½ÃÁö°¡ Ç¥½ÃµË´Ï´Ù. "Submit" ¹öưÀ» ´©¸£¸é ÀÔ·Â °ªÀÌ À¯È¿ÇÑÁö È®ÀÎÇϰí À¯È¿ÇÑ °æ¿ì ÀÔ·Â °ªÀ» ÀúÀåÇÏ°í ·Î±×ÀÎ ·ÎÁ÷À» ¼öÇàÇÕ´Ï´Ù.
ÀÌ »ùÇà ÄÚµå´Â FlutterÀÇ Form validation ¹× TextFormField¸¦ ÀÌÇØÇÏ´Â µ¥ µµ¿òÀÌ µÇ¸ç, À̸¦ ±â¹ÝÀ¸·Î º¹ÀâÇÑ ¾ç½Ä ¹× °ËÁõ ·ÎÁ÷À» ±¸ÇöÇÒ ¼ö ÀÖ½À´Ï´Ù.