본문으로 바로가기
인기 글
Document
Flutter Web App 개발 하면서 느낀 문제점
Web App 개발하면서 느낀 점 과 실수했던 점을 기록해보려고 합니다. 해당 경험은 로박스 Web App 개발하면서 느낀 점을 토대로 작성되었습니다. Flutter Web App 문제점 1. SEO 불가 SEO(검색 엔진 최적화)는 웹사이트가 검색 결과에 더 잘 보이도록 최적화하는 과정입니다. Flutter Web App은 검색 엔진(구글, 네이버)에 노출이 되지 않습니다. Flutter 로 개발되지 않는 웹의 경우 개발자 도구를 켜서 Element Inspect 텍스트를 눌러보면 해당 텍스트가 Select 됩니다. 하지만 Flutter Web App의 경우는 Web App 전체가 Selecte 됩니다. 이는 검색 엔진이 Flutter Web App을 읽을 수가 없다는 것입니다. 공식적으로 SEO를 지..
Package
Flutter native splash screen 라이브러리
이번 글은 Splash Image이 어떤 것이고 flutter native splash 라이브러리를 사용하여 iOS, Android 두 개를 어떻게 구현하는지 에 대한 글입니다. Splash Screen? "Flutter 공식 홈페이지에서는 앱이 로딩되는 동안에 심플한 초기 경험을 제공합니다"라고 적혀있습니다. 여기에서 말하는 심플한 초기 경험(Simple initial experience)은 여러 내용을 담고 있습니다. 예를 들어, 사용자 입장에서 실행하고 싶은 앱이 맞는지 확인할 수 있는 시간이 될 수 있습니다. 그리고 앱을 제공하는 회사 입장에서는 자신의 회사의 정체성과 사용자에게 첫인상을 보여줄 수 있는 수단이기도 합니다. 이밖에도 개발자 입장에서는 앱이 로딩되는 시간 동안 백엔드 단에서 사용자의..
Widget
Flutter Navigator(push, pop, replace) 문서
Navigator는 화면을 이동하거나 닫거나 또는 화면을 대체할 때 사용하는 위젯입니다. 이 글에서는 Navigator의 메서드 종류와 각 메서드가 어떤 역할을 하는지 설명하는 글입니다. Navigator 메서드 종류 push, pop, replace 세 종류가 있습니다. push - 기존 화면 위에 불러올 화면을 불러옵니다. pop - 현재 화면을 닫습니다. replace - 현재 화면을 대체할 때 사용합니다. Named가 붙어있는 메서드 사용하기 위한 사전 작업 MaterialApp 또는 CupertinoApp에서 routes에 원하는 화면을 사전에 지정해둬야 Named가 붙어있는 메서드를 사용할 수 있습니다. Flutter에서 route는 무슨 의미일까요? Flutter에서는 페이지나 화면을 Rou..
Document
Flutter text over flow 적용안될때
개발을 하다 보면 text가 밀릴 때가 발생한다. TextScale을 설정하지 않았을 때 TextScale을 고정시키게 되면 시스템에 설정된 폰트 크기가 적용되지 않는다. 이는 눈이 침침해서 작은 글씨가 잘 안보이시는 어르신들이 사용하는 앱 같은 경우에는 글자가 잘 안 보이는 불편함을 야기시키기 때문에 대체적으로 눈이 침침하신 어르신들이 사용하는 앱을 개발하는 경우에는 안 하는 것이 좋다고 생각한다. 작은 width를 가진 스마트폰으로 발생하는 overflow text의 길이가 초과될 때 그래서 이를 해결하기 위해 나는 아래와 같은 코드 블록을 사용했었다. 하지만 overflow가 적용되지 않았다. Text 길이가 길어짐에 따라 Text 위젯은 확장된다 이로 인해 Text위젯 옆에 있는 위젯을 밀어버려 ..
Widget
Flutter ExpansionPanel 문서
ExpansionPanel, ExpansionPanelList ExpansionPanel은 주로 자세한 정보를 전달할 때 사용하거나 오른쪽 사진처럼 분류할 때도 사용하기 좋습니다. 다만, ExpansionPanel은 단독으로 사용이 불가능하며 ExpansionPanelList의 자식으로만 사용이 가능합니다. 프로퍼티 종류 headerBuilder - 헤더를 생성하는 builder body - 펼쳤을 때 보이는 공간 isExpanded - 확장 여부 canTapOnHeader - default Tap 영역은 화살표 아랫방향을 눌러야 펼쳐지지만 이 프로퍼티를 true 하게 되면 터치영역이 header까지 늘어나게 됨 backgroundColor SingleChildScrollView( child: Cont..
Package
Flutter Hive 라이브러리
Hive는 가볍고 빠른 NoSQL DB이다. 배우고 사용하는 데에 있어서 난이도가 높은 편은 아니다. Hive는 모든 기본 유형의 타입과 List, Map, DateTime, Uint8List를 지원한다. 그리고 other object를 저장하려면 object를 binary form으로 변환하는 TypeAdapter를 등록해야 한다. Hive Package, Hive Docs 프로젝트에 Hive 추가 hive, hive_flutter, hive_generator, build_runner hive_flutter - flutter에서 쉽게 hive를 만들수 있도록 해준다. hive_generator - TypeAdapter를 자동으로 만들어 준다. build_runner - Dart코드 생성 및 모듈식 컴파..