728x90

5

플러터 화면 추가 - 메뉴 안내 추가

이제는 두 번째 화면인 메뉴 화면을 만들어보겠다. ​ 사실 메뉴판은 대표 메뉴로 어떤 음식이 있고 금액은 얼마인지 그리고 원산지가 어디인지만 잘 표현되면 된다. 그래서 홈페이지에 있는 메뉴판 내용을 그대로 가져왔다 ​ ​ 가게 안내 페이지와 동일하게 이름만 MenuGuide인 클래스에 NestedScrollView에 SliverAppBar와 ListView로 구성하였다. ​ 메뉴판 이미지는 SliverAppBar에 FlexibleSpaceBar에 넣었고 ListView 쪽에는 각 메뉴별 대표 이미지를 리스트로 줄줄이 넣었다. ​ ​ 소스 코드는 다음과 같다. import 'package:flutter/material.dart'; class MenuGuide extends StatelessWidget { ..

플러터 2021.01.03

플러터 화면 추가 - 매장 안내

매장 안내를 의미하는 화면을 만들 예정이다. ​ 페이지 특성상 특별한 기술도 필요 없을 것 같고 가게를 소개하는 내용만 잘 구성해서 보이면 될 것 같다. ​ 우선 이전 포스팅에서 만든 NestedScrollView 하단에 ListView 추가 후 내용을 때려 넣으려고 한다. ​ 우선 ShopGuide 클래스에서 아래와 같이 ListView와 그 자식으로 Text를 추가해봤다. ​ 디버깅하여 에뮬레이터 화면을 보면 아래와 같이 추가한 텍스트가 잘 표현되는 것을 볼 수 있다. ​ 이제 그 아래에 공백과 사진을 넣어보겠다. 아래와 같이 Container로 공백을 넣었고 그 아래에 이미지도 추가했다. ​ 이전 포스팅에서 MediaQuery 클래스로 size.height를 이용해 핸드폰 화면 높이를 얻었는데 Co..

플러터 2021.01.03

플러터 Sliver 효과 - 앱 바 애니메이션 스크롤

첫 번째 화면에 해당하는 '가게 안내' 페이지를 작성하기 전에 앱 상단 바를 애니메이션 스크롤 형태로 만들겠다. ​ SliverAppBar를 사용하여 앱 상단 바를 동적으로 표현할 예정이다. 위로 스크롤 하면 바가 작아지는데 이걸 Sliver 효과라고 부른다. ​ 우선 만들어놓은 화면 중 shopguide.dart 파일로 이동 후 아래 소스 코드를 추가한다. ​ 먼저 한 화면에 여러 개의 스크롤을 사용할 수 있는 NestedScrollView를 추가했고 그 안에 위젯으로 SliverAppBar를 추가했다. SliverAppBar에는 여러 옵션들이 있는데 중요해 보이는 pinned, floating, snap에 대한 내용은 위 주석을 참고바란다. 나는 우선 깔끔하게 화면을 구성하기 위해 appbar를 안 ..

플러터 2020.12.31

플러터 - 애니메이션 탭 메뉴 추가

지금까지는 워밍업이었고, 이제 본격적으로 앱 개발을 시작하려고 한다. ​ 나는 누구나 쉽게 따라 할 수 있는 소스 코드를 좋아하기 때문에 쉽고 단순하게 만들어보겠다. ​ 우선 하단에 구성할 탭 메뉴를 만들어보자. 플러터 개발 첫 포스팅 때 얘기했지만 메뉴는 총 4개로 구성할 예정이다. ​ 1. 가게 안내 2. 메뉴 안내 3. 오시는 길 4. 스토어 ​ 4개의 메뉴는 탭으로 구성할 예정이며 쉽게 그리고 이쁘게 만들기 위해 애니메이션 탭을 지원하는 convex_bottom_bar 패키지를 다운로드할 예정이다. 더 이쁜 패키지도 있지만 이 버전이 안정적인 것 같아서 다운로드했다. ​ pubspec.yaml으로 이동하여 convex_bottom_bar를 추가 후 Get Packages를 누른다. convex_b..

플러터 2020.12.29

플러터 앱 아이콘 추가 및 앱 이름 설정

이번에는 플러터 앱 아이콘을 아주 쉽게 추가해보겠다. 패키지를 이용해서 안드로이드와 iOS를 한방에 바꾸는 것이 바로 플러터의 매력이 아니겠는가?! 아이콘 추가 우선 이 전 포스팅에서 추가했던 Assets 폴더에 Icon 폴더를 추가 후 Icon을 해당 폴더에 삽입했다. 패키지 추가 이제 pubspec.yaml에서 flutter_launcher_icons 패키지를 호출하자. 현재 0.8.1 버전까지 나왔다. 아직 1.0까지는 안되서 아쉽네 그리고 줄 바꿈 주의 후 flutter_icons와 내용을 추가하자. android: true, ios: true 부분이 각각 플랫폼에 자동으로 처리해준다. flutter_launcher_icons: ^0.8.1 flutter_icons: android: "launch..

플러터 2020.12.28
728x90