Flutter
-
[Flutter] Flutter에서 다양한 스크롤뷰 사용하기Flutter 2024. 5. 25. 21:17
Column & SingleChildScrollViewColumn과 SingleChildScrollView를 사용하면 단순한 형태의 스크롤뷰를 구현할 수 있습니다. SingleChildScrollView( child: Column( children: [ Container(), Container(), Container(), ], ),); 장점구현이 간단하고 이해하기 쉽다.적은 양의 데이터일 경우 보이지 않는 영역도 미리 렌더링을 해서 렌더링에서 딜레이가 없다.단점여러 형태의 사용자 정의 스크롤과 스크롤 효과를 만들기 쉽지 않다. (ScrollController를 이용해서 직접 개발해야 할 것)데이터양이 많고 복잡하고 비용이 큰 UI를 불러오는 경우 짧은 순간 Jan..
-
[Flutter] Flutter에서 Clean Architecture 구조 설계하기 (feat. get_it)Flutter 2024. 5. 14. 03:04
시작하기 전에사실 Clean Architecture 구조를 설계한 것을 보면 정석적인 구조를 바탕으로 굉장히 다양한 형태로 구현이 되어 있습니다. 패키지로만 분리되어 있는 경우도 있고, 일부만 모듈로 따로 분리하는 경우도 있는데, 모듈 (혹은 패키지) 간 의존성만 떼어내고 관리할 수 있다면 사실 어떤 구조든 맞다고 생각합니다. (그래서 제가 만든 구조도 틀리지 않다고 생각합니다.. 아마도..) 일단 기본 전제는 아래와 같이 잡았습니다.무슨 일이 있어도 presentation 레이어는 data 레이어를 참조할 수 없어야하며, domain 레이어만을 참조할 것무슨 일이 있어도 data 레이어는 presentation 레이어에 접근할 수 없어야하며, domain 레이어만을 참조할 것그러기 위해 presenta..
-
[Flutter] iOS 17부터 InAppWebView 웹 디버깅이 되지 않아요Flutter 2024. 4. 8. 01:43
오늘은 조금 짧막한 글이 될 것 같네요. 특별한 기술적인 내용이라기보다 겪었던 이슈에 대한 정리여서, 슈욱하고 끝날 것 같습니다.발단의 배경Flutter에는 내부 라이브러리인 flutter_webview와 함께 많이 사용하는 InAppWebView라는 라이브러리가 존재합니다. 비록 Flutter 유저가 만든 비공식 라이브러리지만 퀄리티만큼은 flutter_webview에 버금가기 때문에 많이 사용하는 라이브러리입니다. flutter_inappwebview/flutter_inappwebview_ios/ios/Classes/InAppWebView/InAppWebView.swift at master · pichillilorenzo/flutter_iA Flutter plugin that allows..
-
[Flutter] Flutter의 onStart, onStop, onResume, onPauseFlutter 2024. 4. 1. 00:17
Flutter의 생명 주기Flutter의 생명 주기 (lifecycle)은 Android의 Activity의 생명 주기와 다소 상이하게 동작합니다. 당연한 것이지만 Flutter의 위젯은 Android의 View 기반이므로 Activity의 하위 컴포넌트이니까 Activity보다 늦게 나타나고 먼저 사라지게 됩니다. 그렇기 때문에 Activity가 create 돼서야 비로소 위젯이 그려질 수 있습니다. Flutter의 위젯에는 StatelessWidget과 StatefulWidget이 존재하는데, StatelessWidget일 경우엔 독자적인 생명 주기가 존재하지는 않고 부모 위젯이 사라지면 같이 사라지게 됩니다. 이에 반해 StatefulWidget은 독자적인 상태와 생명 주기를 가지고 특정 작업이..
-
[Flutter] Android 14 - WebView가 하얗게 나온다?Flutter 2024. 3. 31. 06:57
글을 시작하기 전에, 찾은 자료와 코드를 보고 예측한 수준이기 때문에 추측이 완전히 틀렸다거나 약간 안 맞는다거나 할 수 있습니다. 그런 부분이 있다면 댓글로 알려주세요. 빠르게 수정하겠습니다..! Flutter에서 WebView가 안보여요Flutter의 WebView를 사용하다가 Android 13, Android 14 버전 (대략 Android 13부터 였던 것 같습니다.) 이후부터 이상한 현상이 있었습니다. 웹뷰를 가지고 있는 앱을 Background 상태로 내려놓고 다른 앱을 사용하다가, 다시 앱으로 돌아오게 되면 화면이 사라지는 현상이었습니다. 심지어 웹뷰 자체가 사라졌다기보다, 클릭을 하면 반응은 합니다. 디버깅을 해보면 다른 주소로 이동한다거나, 웹뷰 내의 컨텐츠는 클릭이 되고, 스크..