inblog logo
|
moohyun
    플러터

    그림 그리기 4 (로그인)

    화낼거양's avatar
    화낼거양
    Dec 26, 2024
    그림 그리기 4 (로그인)
    Contents
    완성된 화면 이미지
     
    클릭하면 전체 코드를 확인할 수 있습니다.
    import 'package:flutter/material.dart'; void main() { runApp(const MyApp()); } class MyApp extends StatelessWidget { const MyApp({super.key}); @override Widget build(BuildContext context) { return const MaterialApp( home: LoginPage(), ); } } class LoginPage extends StatelessWidget { const LoginPage({super.key}); @override Widget build(BuildContext context) { return Scaffold( resizeToAvoidBottomInset: true, body: Column( children: [ Flexible( child: ListView( shrinkWrap: true, children: [ Container( height: 400, color: Colors.redAccent, ), TextFormField(), TextFormField(), TextFormField(), ], ), ), ElevatedButton(onPressed: () {}, child: Text("로그인")) ], ), ); } }
     

    1. resizeToAvoidBottomInset: true

     
    • 설명: 이 속성은 Flutter에서 Scaffold 위젯의 속성으로, 키보드가 나타날 때 화면이 자동으로 리사이즈되도록 제어합니다.
    • 용도: 키보드가 올라왔을 때 화면의 내용이 키보드에 가려지지 않도록 하여 사용자 경험을 향상시킵니다. true로 설정하면 키보드가 나타날 때 화면이 자동으로 리사이즈되어 키보드 위에 표시됩니다.

    2. Flexible

     
    • 설명: Flexible 위젯은 Row, Column 또는 Flex 위젯 내부에서 자식 위젯이 남은 공간을 차지하도록 합니다. flex 속성을 통해 공간을 어떻게 분배할지 설정할 수 있습니다.
    • 용도: 유연하게 레이아웃을 구성하고, 화면 크기나 방향에 따라 위젯의 크기를 조절할 때 사용됩니다.
     
    💡
    자식요소의 사이즈가 정해져 있어야 정상적으로 동작합니다.
     

    3. shrinkWrap: true

     
    • 설명: shrinkWrap 속성은 ListView나 GridView와 같은 스크롤 가능한 위젯에서 사용됩니다. true로 설정하면 스크롤 가능한 콘텐츠의 크기만큼 위젯의 크기를 축소합니다.
    • 용도: 부모 위젯의 크기에 따라 자식 위젯의 크기를 조절하고, 화면에서 사용하지 않는 공간을 줄일 때 유용합니다.
     

    4. TextFormField

     
    • 설명: TextFormField는 Flutter에서 텍스트 입력 필드를 제공하는 위젯으로, 폼(Form)과 함께 사용됩니다. TextFormField는 검증(validation)과 저장(submit) 기능을 지원합니다.
    • 용도: 사용자로부터 텍스트 입력을 받을 때 사용되며, 폼 검증과 같은 기능을 제공하여 데이터의 유효성을 검사할 수 있습니다.
     
     

    완성된 화면 이미지

     
     
    notion image
     
    💡
    기능 구현 없이 그림만 그린 예제입니다.
    Share article
    Contents
    완성된 화면 이미지

    moohyun

    RSS·Powered by Inblog