모바일어플개발/Flutter Tips(19)
-
[013] 플러터 (Flutter) Tip - cocoapods-downloader requires Ruby version >= 2.7.4 (ruby 버전 문제) 해결 방법
안녕하세요~ totally 개발자입니다. 패키지 등을 업데이트하여 빌드하려고 할 때 아래와 같은 에러를 마주하는 경우가 있습니다. sudo gem install cocoapods를 진행할 때 나올 수 있는 오류인데요. 여러 가지 방법을 시도해본 결과 다음의 방법으로 해결하였으니 참고하시면 좋을 것 같습니다. There are no versions of cocoapods-downloader (>= 2.0) compatible with your Ruby & RubyGems. Maybe try installing an older version of the gem you're looking for? cocoapods-downloader requires Ruby version >= 2.7.4. The curren..
2023.11.01 -
[012] 플러터 (Flutter) Tip - Incorrect use of ParentDataWidget 해결 방법
안녕하세요~ totally 개발자입니다. 플러터 개발시 하위 위젯을 굉장히 많이 배치를 하게 되는데 이 때 Incorrect use of ParentDataWidget이라는 오류가 발생하는 경우가 있습니다. 대표적인 경우가 Flexible, Expanded, Positioned 등과 같은 위젯인데요. 이 위젯들의 상위 parent에 적절한 위젯이 들어가지 않으면 오류 메시지가 출력되게 됩니다. 물론 앱 실행상에서는 지장이 없는 경우도 있지만 해결하는 것이 권장됩니다. Flexible, Expanded의 경우에는 Row, Column, Flex 위젯으로 감싸주셔야 합니다. Flexible, Expanded 자체가 여백을 확장하여 채워주는 위젯이기 때문에 2개 이상의 위젯이 들어갈 수 있는 children ..
2023.09.21 -
[011] 플러터 (Flutter) Tip - ListView 등 위젯 사용시 위아래 padding 제거하기
안녕하세요~ totally 개발자입니다. ListView, ListView.builder 등을 쓸 때 위아래로 여백(padding)이 생기는 경우가 종종 있습니다. 그 때 신속하게 해결 가능한 방법은 아래와 같습니다. 보통 2가지 방법이 존재합니다. 1. ListView에 있는 padding 속성으로 해결 2. parent 위젯으로 MediaQuery 위젯을 사용하여 해결 이미 padding이 쓰이는 경우라면 2번 방법으로도 해결할 수 있습니다.
2023.09.20 -
[010] 플러터 (Flutter) Tip - Null Safety 적용하기(Migrating to Null Safety)
안녕하세요~ totally 개발자입니다. Migrating to Null Safety 이 포스팅에서는 Null Safety에 대해서 살펴봅니다. Null Safety는 플러터 2.0, 다트 2.12부터 지원되기 시작했으며 Null Safety를 사용하여 모든 변수는 null로 처리되지 않으며 non-nullable의 변수를 위해서 체크 할 필요가 없습니다. 또한 클래스를 선언할 때 선언할 때 초기화를 하거나 ? 표시나 late 키워드를 통해 사용해주셔야 합니다. 그래서 String message = ""; 또는 String? message; late String message;로 사용합니다. Null Safety를 통해 코드 컴파일 실행 전에 오류로 인식하여 미리 수정할 수 있습니다. 플러터 2.0, 다..
2023.09.03 -
[009] 플러터 (Flutter) Tip - 웹뷰(WebView)에서 유튜브 영상 전체화면 활성화하기
안녕하세요~ totally 개발자입니다. WebView를 사용하시다보면 웹사이트 페이지에 있는 iframe 태그로 구현된 유튜브 영상의 경우 전체화면을 눌러도 안드로이드의 경우 전체화면이 되지 않는 경우가 있습니다. 현재 webview_flutter로는 이것을 해결할 방법이 아직 발견되지 않았고 flutter_inappwebview 패키지를 사용하여 해결할 수 있습니다. Step 1: pubspec.yaml에 flutter_inappwebview 패키지를 추가합니다. Step 2: 사용하실 페이지에서 import합니다. Step 3: 먼저 controller 변수 선언하신 뒤, 아래처럼 InAppWebView 위젯으로 url를 넣어주면 됩니다. 개발에 도움이 되셨기를 바랍니다. Reference: htt..
2023.08.05 -
[008] 플러터 (Flutter) Tip - CocoaPods not installed or not in valid state 이슈 해결
안녕하세요~ totally 개발자입니다. 플러터 개발을 하시다보면 아래 에러가 종종 발생하는 것을 보신 적이 있을 겁니다. 저는 현재 M1 맥북과 VSCode를 사용하고 있습니다. 해결책은 아래와 같습니다. Step 1: flutter clean 명령어 입력 Step 2: flutter pub get 명령어 입력 Step 3: ios 이슈이니 ios 경로로 가셔서 pod install 명령어 입력 Step 4: 그리고 sudo gem install cocoapods 입력하시고 root 비밀번호(맥 비밀번호)를 입력하시면 됩니다. Step 5: run 실행해줍니다. 다만 여기에서 fn + F5로 디버그 모드로 실행했을 때 에러가 계속 나오는 경우가 있습니다. 이 때에는 터미널에서 flutter run --..
2023.08.05