Onboarding

tpids·2024년 9월 19일

Flutter

목록 보기
25/40
import 'package:flutter/material.dart';
import 'package:flutter_onboarding_slider/flutter_onboarding_slider.dart';

class ExOnboarding extends StatelessWidget {
  const ExOnboarding({super.key});

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: SafeArea(
          child: OnBoardingSlider(
            headerBackgroundColor: Colors.white,
            finishButtonText: 'Register',
            finishButtonStyle: FinishButtonStyle(
              backgroundColor: Colors.black,
            ),
            skipTextButton: Text('Skip'),
            trailing: Text('Login'),
            background: [
              // double.infinity -> 부모의 위젯만큼 커지는 코드
              // 디바이스의 가로/세로 길이를 구하는 방법
              // width: MediaQuery.of(context).size.width
              // height:                           .height
              Image.asset('image/page1.jpg', width: MediaQuery.of(context).size.width,),
              Image.asset('image/page2.jpg', width: MediaQuery.of(context).size.width,),
            ],
            totalPage: 2,
            speed: 1.8,
            pageBodies: [
              Container(
                padding: EdgeInsets.symmetric(horizontal: 40),
                child: Column(
                  children: <Widget>[
                    SizedBox(
                      height: 480,
                    ),
                    Text('Description Text 1'),
                  ],
                ),
              ),
              Container(
                padding: EdgeInsets.symmetric(horizontal: 40),
                child: Column(
                  children: <Widget>[
                    SizedBox(
                      height: 480,
                    ),
                    Text('Description Text 2'),
                  ],
                ),
              ),
            ],
          ),
      ),
    );
  }
}

MediaQuery

profile
개발자

0개의 댓글