ویجت Form

تعداد بازدید ها : 1,279 بازدید
 ویجت Form

ویجت Form یک ظرف اختیاری جهت دسته بندی ویجت های مرتبط با جمع آوری اطلاعات است . توسط این ویجت فرآیند تنظیم مجدد (rest) و اعتبارسنجی (validate) بسیار سریع و راحت صورت می پذیرد . در این رابطه فقط کافیست که یک کلید GlobalKay تعریف و به فرم متصل نمایید و سپس توسط دستور GlobalKey.currentState به متد تنظیم مجدد یا اعتبارسنجی دسترسی خواهید داشت . قطعه کد زیر نمونه ای از پیاده سازی یک فرم را به نمایش گذاشته است :

final _formKey = GlobalKey<FormState>();

@override
Widget build(BuildContext context) {
  return Form(
    key: _formKey,
    child: Column(
      crossAxisAlignment: CrossAxisAlignment.start,
      children: <Widget>[
        TextFormField(
          decoration: const InputDecoration(
            hintText: 'Enter your email',
          ),
          validator: (value) {
            if (value.isEmpty) {
              return 'Please enter some text';
            }
            return null;
          },
        ),
        Padding(
          padding: const EdgeInsets.symmetric(vertical: 16.0),
          child: RaisedButton(
            onPressed: () {
              // Validate will return true if the form is valid, or false if
              // the form is invalid.
              if (_formKey.currentState.validate()) {
                // Process data.
              }
            },
            child: Text('Submit'),
          ),
        ),
      ],
    ),
  );
}

در مثال فوق ابتدا یک کلید عمومی (GlobalKey) تعریف شده است (خط ۱) و سپس در خط ۶ کلید به ویجت Form متصل شده است . سپس در خط ۱۴ قابلیت اعتبارسنجی ویجت TextFormField فعال شده است و خط ۲۷ در رویداد onPressed ویجت RaisedButton نیز وضعیت اعتبار ویجت های داخل فرم بصورت یکجا مورد بررسی قرار گرفته است . در این لحظه اگر چند ویجت TextFormField در داخل فرم بود ، بصورت یکجا تمام آنها مورد اعتبارسنجی قرار می گرفتند .

خروجی کد فوق در تصویر زیر قابل رویت است :

formجهت کسب اطلاعات بیشتر از این آدرس به سایت اصلی فلاتر مراجعه نمایید .

می خوانم   کلاس ها و Generics در دارت

امیدوارم این مطلب برای شما مفید باشد .

3+
محمدمجتبی جوارشکیان

محمدمجتبی جوارشکیان

من محمدمجتبی جوارشکیان ، کارشناس IT و فعال اجتماعی هستم و در حوزه معماری ، طراحی ، تحلیل گری ، مدلسازی و توسعه ی محیط های نرم افزاری فعالیت دارم . بسیار خوشحال می شوم من را از انتقادات ، پیشنهادات و نظرات خود مطلع فرمایید . آدرس ایمیل : info@javareshkian.ir

ارسال یک پاسخ

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

ده − شش =