본문으로 바로가기

snackbar가 flutter에 내장되어있는 반면 toast는 없기 때문에 외부 라이브러리를 사용해야 한다.

 

 

fluttertoast | Flutter Package

Toast Library for Flutter, Easily create toast messages in single line of code

pub.dev

 

설치는 공식 문서를 참고하고, 바로 활용해봅시다.

 

import 'package:flutter/material.dart';
import 'package:fluttertoast/fluttertoast.dart';
import 'MyHomePage.dart';

void main() {
  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  // This widget is the root of your application.
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
        title: 'Flutter Demo',
        theme: ThemeData(
          primarySwatch: Colors.blue,
          visualDensity: VisualDensity.adaptivePlatformDensity,
        ),
        home: Home()
        );
  }
}

class Home extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
        appBar: AppBar(
          title: Text("Toast!"),
          centerTitle: true,
        ),
        // context 관련 문제를 피하기 위해 분리해주도록 합시다.
        body: ToastTest());
  }
}

class ToastTest extends StatelessWidget {
  void showToast() {
    Fluttertoast.showToast(
        msg: "This is Long Toast",
        // gravity는 toast가 어디에 뜰 것인지를 설정합니다. 기본값은 Bottom입니다.
        gravity: ToastGravity.BOTTOM,
        backgroundColor: Colors.grey,
        fontSize: 20.0,
        textColor: Colors.black,
        // toastLength는 toast가 뜨는 시간을 설정하는 겁니다. short, long이 존재합니다.
        toastLength: Toast.LENGTH_SHORT);
  }

  @override
  Widget build(BuildContext context) {
    return Center(
        child: FlatButton(
            onPressed: () {
              showToast();
            },
            child: Text("Toast!!!"),
            color: Colors.lightBlue));
  }
}

 

 


darren, dev blog
블로그 이미지 DarrenKwonDev 님의 블로그
VISITOR 오늘 / 전체