본문 바로가기

전체 글980

Flutter 플러터: 버튼에서 패딩 제거 - FlatButton, ElevatedButton, OutlinedButton, Flutter: Remove padding in buttons - FlatButton, ElevatedButton, OutlinedButton 질문 기본 마진을 제거하려고 하는데 FlatButton의 마진을 설정/재정의할 수 없습니다. Column(children: [ Container( children: [ FractionallySizedBox( widthFactor: 0.6, child: FlatButton( color: Color(0xFF00A0BE), textColor: Color(0xFFFFFFFF), child: Text('LOGIN', style: TextStyle(letterSpacing: 4.0)), shape: RoundedRectangleBorder(side: BorderSide.none)))), Container( margin: const EdgeInsets.only(top: 0.0), child: FractionallyS.. 2023. 9. 6.
Flutter 플러터에서 API 키를 저장하는 올바른 방법과 최선의 관행을 따르는 방법, Correct way of storing API Keys in flutter following best practises 질문 플러터에서 비밀 API 키를 추가하는 올바른 방법(최선의 방법)은 무엇인가요? 만약 코드를 깃허브에 푸시하려면 어떻게 해야 할까요? 나는 앱이 작동하는지 테스트하기 위해 간단한 앱을 만들었지만, API 키를 일종의 임시 방법으로 사용했습니다. 일반적으로 백엔드에서 애플리케이션을 개발하는 경험에서 키는 어딘가에 저장되며 다른 파일에 저장한 다음 필요한 파일에 해당 파일을 가져와서 API_KEY을 사용합니다. 그리고 해당 파일은 .gitignore 파일에서 제외합니다. 지금까지 다음과 같은 접근 방식을 구현했습니다: 폴더 트리 -lib -auth -keys.dart -secrets.json secrets.json 여기에 KEY를 추가하고 이 파일을 .gitignore에 지정하여 코드를 푸시할 때 깃허브.. 2023. 9. 6.
Flutter 안드로이드 스튜디오에서 개발된 플러터 프로젝트에 대한 정식 .gitignore 파일은 무엇인가요?, What is a legit .gitignore for a Flutter project that is developed in Android Studio? 질문 플러터 프로젝트를 개발하는 동안 안드로이드 스튜디오에서 사용할 수 있는 정당한 .gitignore는 무엇인가요? 지금까지 작성한 내용은 다음과 같습니다. 하지만 안드로이드 스튜디오에서 프로젝트를 열 때 Dart 지원을 활성화하거나 프로젝트를 탐색할 수 없습니다. #flutter specific .flutter-plugins .DS_Store .dart_tool/ .packages .pub/ build/ android/app/google-services.json .idea/ android/key.properties pubspec.lock doc/api/ #ios specific ios/.generated/ ios/Podfile* ios/Flutter/Debug.xcconfig ios/Flutter/R.. 2023. 9. 6.
Flutter 에뮬레이터를 실행하지 못했습니다: 오류: 60초 내에 에뮬레이터가 연결되지 않았습니다., Failed to launch emulator: Error: Emulator didn't connect within 60 seconds 질문 Flutter를 사용하여 VSCode에서 디버그를 할 수 없습니다. Windows를 사용하고 Android 에뮬레이터를 사용하려고 합니다. 이 문제를 해결하기 위해 Flutter, Android SDK 및 VSCode를 재설치하고 환경 변수를 설정해 보았지만 문제가 해결되지 않았습니다. 디버그 모드를 시작할 때 발생하는 오류입니다. Failed to launch emulator: Error: Emulator didn't connect within 60 seconds Android와 IOS 모두 사용할 수 있는 더 좋은 에뮬레이터가 있을까요? IOS 에뮬레이터에 대해서는 어디서부터 시작해야 할지도 모르겠습니다. 앱 개발은 처음이라 두 기기에 대한 애플리케이션 개발을 시작하고 싶습니다. 답변 나도 같은.. 2023. 9. 6.
Flutter 플레이 스토어 경고: Android 13 (API 33)을 대상으로 하는 앱을 출시하기 전에 광고 ID 선언을 완료해야 합니다., Play Store warning: You must complete the advertising ID declaration before you can release an app tha.. 질문 플레이 스토어에 기반한 플러터 안드로이드 앱을 출시하려고 합니다. 플레이 스토어 콘솔에서 내 출시를 검토할 때 다음과 같은 경고가 나옵니다: Android 13 (API 33)을 대상으로 하는 앱을 출시하기 전에 광고 ID 선언을 완료해야 합니다. 이 선언은 Android 13에서 광고 ID에 대한 변경 사항을 수용하기 위해 Play 콘솔에서 보호장치를 제공하는 데 사용됩니다. 광고 ID를 사용하는 Android 13 이상을 대상으로 하는 앱은 manifest에 com.google.android.gms.permission.AD_ID 권한을 포함해야 합니다. 제가 조언을 따라서 android/app/src/main/AndroidManifest.xml에 다음을 추가했습니다: 'flutter clean'.. 2023. 9. 6.
Flutter 플러터에서 텍스트 필드 입력의 길이를 제한하는 방법은 무엇인가요?, How can I limit the length of a text field input in flutter? 질문 TextField 위젯에는 입력 가능한 문자 수를 제한하는 "limit" 속성이 없는 것 같습니다. TextField 위젯에서 입력으로 제공할 수 있는 문자 수를 제한하는 방법은 무엇인가요? decoration 속성을 살펴보고 그곳에서 제한을 설정해보려고 했지만 잘 작동하지 않았습니다. 사용해야 할 다른 위젯이 있을까요? 답변 inputFormatters 속성을 사용합니다. 예시: TextFormField( inputFormatters: [ LengthLimitingTextInputFormatter(10), ] ) 네임스페이스 import 'package:flutter/services.dart'; 2023. 9. 6.
Flutter 위젯 트리에서 const를 사용하면 성능이 향상됩니까?, Does using const in the widget tree improve performance? 질문 위젯 트리를 생성할 때, 정적 위젯 앞에 const를 삽입하면 성능이 향상될까요? 예시 child: const Text('이것은 일부 텍스트입니다'); 대신 child: Text('이것은 일부 텍스트입니다'); Dart 2에서는 const가 선택 사항이며, 일부 상황에서 자동으로 삽입됩니다. 이것은 그런 상황 중 하나인가요? 그렇지 않다면, const를 사용하면 메모리 사용량이 줄어들거나 성능이 향상될까요? 답변 작은 성능 개선이지만, 큰 앱이나 애니메이션으로 인해 뷰가 자주 재구성되는 앱에서는 적용할 수 있습니다. const는 가비지 컬렉터에 필요한 작업을 줄입니다. analysis_options.yaml에서 일부 린터 규칙을 활성화할 수 있습니다. 이 규칙은 추론되지 않지만 가능한 경우 cons.. 2023. 9. 6.
Flutter 플러터에서 레이아웃의 방향 변경을 감지하는 방법은 무엇인가요?, How to detect orientation change in layout in Flutter? 질문 Flutter에서 방향이 세로인지 가로인지 확인하는 방법 if(portrait){ return ListView.builder() }else{ return GridView.count() } 답변 화면의 방향을 결정하기 위해, 우리는 OrientationBuilder 위젯을 사용할 수 있습니다. OrientationBuilder는 현재의 방향을 결정하고 방향이 변경될 때마다 재구성합니다. new OrientationBuilder( builder: (context, orientation) { return new GridView.count( // 세로 모드에서는 2개의 열을, 가로 모드에서는 3개의 열을 가진 그리드를 생성합니다. crossAxisCount: orientation == Orientation.. 2023. 9. 6.