본문 바로가기

전체 글198

플러터 앱이름 변경하는 방법 (Flutter Appname Change setup) 플러터로 앱개발을 하고 빌드하면 기본적으로 패키지이름으로 작성한 영문이름으로 생성됩니다. 하지만 한글로 바꾸고 싶다면 아래와 같이 바꾸면 됩니다. * 프로젝트 > android > app > src > main > AndroidManifest.xml 위에 [원하는 앱이름]쪽이 보통은 영문으로 되어 있을텐데, 영문이든 한글이든 원하는 것으로 바꾸면 된다. 당연히 변수가 아니니 ${}을 쓰지 말고 그냥 큰따옴표 "" 안에 이름을 쓰면 된다. 2022. 6. 25.
플러터 앱 아이콘 변경 바꾸는 법 (Flutter App Icon change setup) 플러터로 개발한 모든 앱들의 기본 아이콘은 아래와 같습니다. 아직 개발이나 테스트중이라면 몰라도 배포할 때는 앱성격에 맞는 별도의 아이콘이 있어야 완성도가 있겠죠? 앱 아이콘을 바꾸는 방법은 아주 간단합니다. 아래와 같이 # 프로젝트 > android > app > src > main > res 폴더에 진입합니다. 폴더를 모두 펼쳐보면 ic_launcher.png 라는 이미지 파일이 있는데 이게 바로 기본 아이콘입니다. 각각의 폴더는 해상도별로 따로 삽입하는건데, 자세한 얘기는 생략하겠습니다. 이제 방법은 2가지입니다. 1) 내가 원하는 그림을 ic_launcher.png 파일명으로 바꿔서 모두 덮어쓰기 하는 것 2) 내가 원하는 그림을 [다른 이름]으로 바꾼 뒤, 설정 코드에서 [다른 이름]으로 바꾸는.. 2022. 6. 24.
[플러터] Script 'C:\flutter\packages\flutter_tools\gradle\flutter.gradle' > Process 'command 'C:\flutter\bin\flutter.bat'' finished with non-zero exit value 1 해결법 플러터 프로젝트를 진행하던 중 아래와 같은 오류가 발생했습니다. Launching lib\main.dart on SM S908N in debug mode... Running Gradle task 'assembleDebug'... FAILURE: Build failed with an exception. * Where: Script 'C:\flutter\packages\flutter_tools\gradle\flutter.gradle' line: 1156 * What went wrong: Execution failed for task ':app:compileFlutterBuildDebug'. > Process 'command 'C:\flutter\bin\flutter.bat'' finished with non.. 2022. 6. 23.
[플러터] Flutter 'elapsedInSeconds >= 0.0': is not true. 오류 해결 플러터 프로젝트를 진행중에 아래와 같은 오류가 났습니다. 아래보다 더 길었지만 대략 위에있는 오류코드가 중요하니 생략합니다. ======== Exception caught by scheduler library ===================================================== The following assertion was thrown during a scheduler callback: 'package:flutter/src/animation/animation_controller.dart': Failed assertion: line 822 pos 12: 'elapsedInSeconds >= 0.0': is not true. Either the assertion indicate.. 2022. 6. 23.
플러터 라디오버튼 여백, 너비, 가로길이 줄이기 (Flutter RadioButton ListTile Width padding margin decrease) 플러터에서 라디오 버튼쪽을 구현하고 있는데 라디오 버튼 주변의 여백이 쓸데없이 넓고, 우측의 텍스트 영역도 뭔가 불필요한 공간이 많게 느껴져서 여기저기 서치해봤습니다. 일단 저는 ListTile()로 구현중이었는데.. 이건 아래와 같은 구조라 여기저기 여백이 많다고 하더군요.. 자세한 설명은 생략합니다.. 그래서 저것보단 차라리 SizedBox() 로 Width, Height를 줘서 조절하는게 쉽고 간단하다고 합니다. 실제로 해보니.. 제가 못해서 그런걸수도 있는데 코드는 더 길어지는 느낌이었습니다 Row, Column에 Children에 아주 난리더군요. 원래 그정도 되는건지.. 여튼 처음에 ListTile()로 구현할땐 아래와 같았습니다 ListTile( title: const Text('전부다'),.. 2022. 6. 19.
플러터 ListTile 라디오 버튼 높이, 마진, 패딩 조절 (Flutter ListTile RadioButtion height VisualDensity) 플러터 프로젝트를 하다가 라디오 버튼을 만들었는데, 높이인지 마진인지 패딩인지 쓸데없이 위아래 간격이 높아서 조금 줄이고 싶었습니다. 대충 아래와 같은 코드상태에서 헤매고 있을텐데 ListTile( title: const Text('모두 보기'), leading: Radio( value: radioImage.ALL, groupValue: _radioImage, onChanged: (radioImage value) { setState(() { _radioImage = value; }); }, ), ), 아래 코드를 추가해주면 됩니다 visualDensity: VisualDensity(horizontal: 0, vertical: -4), 완성된 코드는 아래와 같습니다 ListTile( visualDensit.. 2022. 6. 18.
[플러터] Flutter CamcorderProfile has been deprecated 오류 100% 해결법 플러터에서 카메라 관련 프로젝트를 진행하는데 초장부터 아주 쌩난리가 났습니다. Launching lib\main.dart on SM S908N in debug mode... Running Gradle task 'assembleDebug'... C:\flutter\.pub-cache\hosted\pub.dartlang.org\camera_android-0.9.7+1\android\src\main\java\io\flutter\plugins\camera\features\resolution\ResolutionFeature.java:154: warning: [deprecation] get(int,int) in CamcorderProfile has been deprecated return CamcorderProfi.. 2022. 6. 18.
pubspec.yaml: A dependency may only have one source. 해결법 (The following adds the Cupertino Icons font to your application.) 플러터 프로젝트를 진행하는데 초장부터 빨간색 에러가 나타났습니다. Error on line 31, column 5 of pubspec.yaml: A dependency may only have one source. ╷ 31 │ ┌ sdk: flutter 32 │ │ camera: 33 │ │ path_provider: 34 │ │ path: 35 │ │ 36 │ │ # The following adds the Cupertino Icons font to your application. 37 │ │ # Use with the CupertinoIcons class for iOS style icons. 38 │ │ cupertino_icons: ^1.0.2 │ └──^ ╵ pub get failed (65; ╵.. 2022. 6. 18.
플러터 뒤로가기 2번 눌러서 종료하기 (예, 아니오 선택 버튼 샘플 코드) Flutter 플러터에서 뒤로가기 1번을 눌렀을때 '정말 종료하시겠습니까?'가 나타나고 1번 더 누르면 정말 종료되는 코드는 지난 포스팅을 참고해주세요. ▶ 기본 코드 보기 오늘은 [예, 아니요]를 눌러 선택할 수 있는 기능을 살펴보겠습니다. WillPopScope 클래스를 사용하고 onWillPop 속성에 back 버튼 처리를 위한 _onBackPressed 함수를 넣어 사용합니다. onPressed:() 이벤트에 대해 '예'를 선택했을 때 SystemNavigator.pop(); 함수로 앱을 종료하거나 Navigator.pop() 함수로 앱말고 현재 대화창만 닫을 수 있습니다. 전체 코드는 아래와 같습니다. Future _onBackPressed() { return showDialog( context: contex.. 2022. 6. 17.
플러터 뒤로가기 2번 눌러서 종료하는 코드 샘플 예제 (Flutter doubleback button app close) 플러터로 개발된 앱은 기본적으로 뒤로가기를 누르면 꺼지지 않고 home을 누른것처럼 됩니다. 윈도우에서 탐색기창을 최소화시킨것처럼 그냥 백그라운드에서 돌아가는 것입니다. 음악이라도 재생되면 대번에 알겠지만, 음악이 없다면 뒤로가기를 눌렀을때 꺼진건지 어떤건지 바로 알기가 어렵습니다. 어쨌든 뒤로가기를 1번 누르면 '정말 종료하시겠습니까?'하는 메시지를 띄워주고, 뒤로가기를 바로 1번더 누르면 꺼지는 코드는 아래와 같습니다. 1) 기본 : Toast 기능 사용하기 class MyApp extends StatelessWidget { @override Widget build(BuildContext context) { return MaterialApp( home: DoubleBack( message:"Press.. 2022. 6. 17.