Dialog
팝업 대화 상자를 띄운다.
AlertDialog 를 호출해서 띄우며 주요 속성은
- title: 상단의 타이틀 텍스트
- content: 가운데의 메인 텍스트
- actions: 하단의 버튼들
Code Template
import 'package:flutter/material.dart';
/// Flutter code sample for [showDialog].
void main() => runApp(const ShowDialogExampleApp());
class ShowDialogExampleApp extends StatelessWidget {
const ShowDialogExampleApp({super.key});
@override
Widget build(BuildContext context) {
return const MaterialApp(
home: DialogExample(),
);
}
}
class DialogExample extends StatelessWidget {
const DialogExample({super.key});
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(title: const Text('showDialog Sample')),
body: Center(
child: OutlinedButton(
onPressed: () => _dialogBuilder(context),
child: const Text('Open Dialog'),
),
),
);
}
Future<void> _dialogBuilder(BuildContext context) {
return showDialog<void>(
context: context,
builder: (BuildContext context) {
return AlertDialog(
title: const Text('Basic dialog title'),
content: const Text(
'A dialog is a type of modal window that\n'
'appears in front of app content to\n'
'provide critical information, or prompt\n'
'for a decision to be made.',
),
actions: <Widget>[
TextButton(
style: TextButton.styleFrom(
textStyle: Theme.of(context).textTheme.labelLarge,
),
child: const Text('Disable'),
onPressed: () {
Navigator.of(context).pop();
},
),
TextButton(
style: TextButton.styleFrom(
textStyle: Theme.of(context).textTheme.labelLarge,
),
child: const Text('Enable'),
onPressed: () {
Navigator.of(context).pop();
},
),
],
);
},
);
}
}
출력
'개발 > Flutter' 카테고리의 다른 글
[Flutter] LinearProgressIndicator (0) | 2024.07.30 |
---|---|
[Flutter] Navigation (0) | 2024.07.29 |
[Flutter] ListTile (0) | 2024.07.23 |
[Flutter] Card (0) | 2024.07.23 |
[Flutter] JSON 입출력 (0) | 2024.07.23 |