문제점 content type을 application/json으로 넣을 경우의 body엔 application/json에 맞게 String값이 들어가야하는데 map형식으로 넣어서 문제 발생 다시 말해서 application/json은 json string(json 형태를 문자열로 입력하는 형식)타입을 전송한단 것을 의미하기 때문에 map으로 넣으면 안되는 것 해결방법 map형식인 데이터를 dart:convert 패키지 내의 jsonEncode함수로 래핑하여 String으로 변경되어 들어가도록 구현 예시는 아래와 같다. import 'package:http/http.dart'; import 'dart:convert'; func() async { final result = await post(Uri.pa..
TextField나 TextFormField 위젯 내에서 사용 TextField( ... obscureText: true, enableSuggestions: false, autocorrect: false, ) obscureText가 실제로 값이 보이지 않도록 설정하는 것이므로 true로 설정 enableSuggestions는 자동 제안 기능이고, autocorrect는 자동 완성 기능이므로 둘 다 false로 설정하여 노출 위험성을 줄임 참고 How to add a Password input type in flutter makes the password user input is not visible , just like Android Native EditText 's i meet a problem tha..
문제점 내 경우엔 Row위젯 안에 TextField위젯을 넣었을 때 발생했다. TextField위젯이 가지는 InputDecoration으로 인해 발생한 에러이다. InputDecoration의 선언부에도 주석으로 써 있는데 가로 크기가 무한이면 안된다고 한다. Row위젯과 같이 width 크기를 제한하지 않는 위젯이 상위에 있으면 에러가 발생한다. Column위젯 안에 ListView위젯을 사용할 때도 발생한다. 해결방법 TextField위젯을 Expanded위젯으로 감싸서 width크기를 제한한다. 만약 ListView위젯을 Column위젯 안에 넣었을 때 발생했다면 ListView를 Expanded위젯으로 감싸면 된다. TextField 참고 How to solve ' RenderBox was no..
하위 페이지로 이동할 경우 자동으로 뒤로가기 버튼이 앱 바에 생기게 되는데 이를 없앨 수 있다. AppBar 내의 automaticallyImplyLeading을 false로 준다. AppBar( title: const Text('appbar title'), automaticallyImplyLeading: false, ) 참고 flutter remove back button on appbar I am wondering, if anyone knows of a way to remove the back button that shows up on the appBar in a flutter app when you use Navigator.pushNamed to go to another page. The reaso..
Android Android -> app -> src -> main -> AndroidManifest.xml 열기 Application 태그 내의 android:label 속성의 값을 변경 Runner -> info.plist 열기 여러 key 태그 중 CFBundleDisplayName란 내용을 포함한 키를 찾음 찾은 key 아래의 string에 앱 이름 입력 CFBundleDisplayName 앱이름
리스트 뷰 보기 ScrollView 스크롤 뷰의 최상단에서 위로 올리려고 스크롤하거나 최하단에서 아래로 내리려고 스크롤하면 안드로이드는 동그랗게 이펙트가 나오고 iOS는 최상단 또는 최하단 부분을 넘어서까지 스크롤되는 것을 볼 수 있다. Android MaterialApp -> ScrollConfiguration -> ScrollBehavior -> AndroidOverscrollIndicator.glow(GlowingOverscrollIndicator) -> 로 인해 나오게 된다. iOS MaterialApp -> ScrollConfiguration -> ScrollBehavior -> BouncingScrollPhysics로 인해 나오게 된다. 각 플랫폼의 overscroll 효과를 없애기위해 커스텀..
문제점 화면에 위젯들을 보여줄 공간이 부족해서 발생하는 오류이다. 내 경우엔 Column 위젯에 TextFormField 위젯들을 자식으로 나열한 상태에서 입력을 위해 키보드가 나올 때 세로 공간이 부족해서 발생했다. 해결법 Column위젯의 부모를 SingleChildScrollView로 줘서 위젯들을 렌더링하는데 필요한 세로 크기가 화면 크기보다 크면 스크롤 되어 볼 수 있도록 만들어 해결 return SingleChildScrollView( child: Column( ... ), ) 참고
Mac(IOS, Android) 설치 바로가기 Window 10(Android) Flutter SDK 설치 stable 버전의 flutter sdk를 압축한 zip파일 다운로드 한 뒤 원하는 경로에 압축 풀기 압축 풀면 flutter 폴더가 생긴다. SDK 설치 링크 작성일시 기준으로 한글로 된 설치 페이지에선 설치 버튼이 비활성화 되어있어 설치가 되지 않는다. 환경 변수 추가 환경 변수에 압축 푼 경로\flutter\bin 을 추가 예시로 난 d드라이브에 압축을 풀었으므로 D:\flutter\bin 를 환경 변수에 추가했다. 환경 변수 설정 방법 링크 환경 변수 설정 확인 cmd 창 열어 flutter 명령어 입력해서 작동 여부를 통해 환경 변수 설정 확인 정상 작동한다면 여러 안내문구와 처음 입력시엔..