TextField

 

TextField 위젯은 사용자로부터 텍스트를 입력받기 위해 사용하는 위젯으로, 가장 많이 사용하는 위젯.

TextField는 텍스트를 입력할 때마다 데이터가 수정되어 onChanged 이벤트가 발생된다.

 

이메일 형식의 텍스트 박스

 

TextField(
    keyboardType: TextInputType.emailAddress,
    controller: TextEditingController(),
    decoration: InputDecoration(
      labelText: 'Email',
      hintText: 'you@email.com',
      icon: Icon(Icons.mail_outline),
    ),
),

 

 

 

숫자만 입력 가능한 텍스트 박스

 

TextField(
    keyboardType: TextInputType.number,
    controller: TextEditingController(),
    decoration: InputDecoration(
      labelText: 'Number',
      hintText: '12345',
      icon: Icon(Icons.calculate_outlined),
    ),
    maxLength: 8, // 최대 입력 길이
    inputFormatters: [FilteringTextInputFormatter.allow(RegExp('[0-9]'))], // 정규식 : 숫자 0~9만 가능
),

 

 

 

 

비밀번호 입력 박스

 

비밀번호를 입력하기 위한 텍스트는 매우 중요해서 일반적으로 타인이 볼 수 없도록 '*' 로 표시되도록 설정을 한다.

 

TextField(
    keyboardType: TextInputType.visiblePassword,
    obscureText: true, // 입력 텍스트를 '*'로 표시해준다.
    controller: TextEditingController(),
    decoration: InputDecoration(
      labelText: 'Password',
      border: OutlineInputBorder(), //입력 칸에 테두리 설정
      icon: Icon(Icons.password),
    ),
    maxLength: 19, // 최대 입력 길이
    inputFormatters: [FilteringTextInputFormatter.allow(RegExp('[0-9]'))], // 정규식 : 숫자 0~9만 가능
),

 

 

'Mobile > Flutter' 카테고리의 다른 글

(Flutter) 내비게이션  (0) 2024.05.06
(Flutter) 레이아웃 flex, stack, align, SizedBox  (0) 2024.05.03
(Flutter) 레이아웃  (0) 2024.05.01
(Flutter) SafeArea  (0) 2024.04.28
(Flutter) Image / Icon  (0) 2024.04.28

+ Recent posts