분류 전체보기
-
[Flutter] Provider에서 listen: true/fasle 차이함께 공부하는 Flutter 2024. 2. 3. 12:39
Provider.of 메서드는 Provider 패키지를 사용하여 상태를 관리할 때 사용되는 메서드입니다. listen 매개변수는 Provider.of 호출로 인한 리스너를 활성화 또는 비활성화하는 역할을 합니다. Provider.of(context, listen: false); 위 코드에서 listen이 false로 설정되어 있습니다. 이는 현재 상태에 대한 변화를 감지하지 않도록 하며, 따라서 리스너가 활성화되지 않습니다. 즉, 상태가 변경되어도 해당 위치에서는 다시 렌더링되지 않습니다. Provider.of(context, listen: true); 이 경우에는 listen이 true로 설정되어 있습니다. 이는 현재 상태에 대한 변화를 감지하도록 하며, 따라서 상태가 변경되면 해당 위치에서 다시 렌더..
-
[DART] 문장기호를 포함한 split함께 공부하는 Flutter 2024. 1. 25. 15:51
이 정규 표현식 RegExp(r'(?에 대해 상세히 설명드리겠습니다.전체 표현: (?이 정규 표현식은 두 부분으로 구성되어 있습니다: 룩비하인드 어서션((?)과 공백 문자(\s).룩비하인드 어서션 (Lookbehind Assertion): (?(?는 룩비하인드 어서션으로, 이것은 "이 패턴에 일치하는 문자열의 바로 앞에 있는 문자열을 찾으세요"라는 의미입니다.\S는 공백이 아닌 모든 문자에 일치합니다. 즉, 공백, 탭, 줄바꿈 문자 등을 제외한 모든 문자입니다.[.!?]는 대괄호 안의 어떤 문자 하나에 일치하는 문자 클래스입니다. 여기서는 마침표(.), 느낌표(!), 물음표(?) 중 하나에 일치합니다.따라서 (?는 공백이 아닌 문자(\S) 뒤에 마침표, 느낌표, 또는 물음표 중 하나가 오는 위치를 찾습니..
-
[Flutter] Dependency 관리법함께 공부하는 Flutter 2024. 1. 10. 12:40
여러 개의 패키지를 쓰다보면 dependency를 별도로 관리해줘야 하는 케이스들이 있습니다. 예를 들면, easy_localization 같은 걸 쓰려면 해당 패키지가 이미 특정 버전의 intl을 쓰고 있기 때문에 버전을 맞춰줘야 정상적으로 패키지가 설치됩니다. Flutter에서 의존성을 관리하는 데는 여러 가지 방법이 있습니다. 일반적으로 pubspec.yaml 파일을 사용하여 의존성을 정의하고, 버전을 명시하거나 범위를 지정할 수 있습니다. 아래에는 다양한 방법에 대한 설명이 있습니다. 특정 버전 명시: 특정 버전을 사용하려면 pubspec.yaml 파일에서 의존성을 다음과 같이 선언합니다. dependencies: package_name: ^1.2.3 ^ 기호는 minor 버전까지 자동으로 업데이..
-
[Flutter] 사용자 위치 파악 - dart:io 활용함께 공부하는 Flutter 2024. 1. 9. 18:35
** 참고로 엄청 간단한데, ChatGPT한테 이 방법을 알려달라고 해도 제대로 알려주지 않아요. import 'dart:io'; String userLanguage = 'ko'; String userContry = 'KR'; String userCountryIcon = '🇰🇷'; void getUserLocale() { String systemLocale = Platform.localeName; userLanguage = systemLocale.split('_')[0]; userContry = systemLocale.split('_')[1]; switch (userContry) { case 'KR': userCountryIcon = '🇰🇷'; break; case 'JP': userCountryIcon..
-
NULL SAFETY 는 중요하다사소한 개발팁 2024. 1. 9. 17:30
"Null safety"는 프로그래밍 언어에서 중요한 개념 중 하나입니다. 이는 프로그램에서 'null' 값이 예기치 않게 발생하는 것을 방지하고, 이로 인한 오류를 줄이기 위한 기능입니다. 'null'은 변수나 객체가 아무런 값도 가지고 있지 않음을 나타내는 특별한 값입니다. Null safety 기능을 갖춘 프로그래밍 언어에서는 다음과 같은 이점이 있습니다: 1. **오류 방지**: 프로그램에서 null 참조 오류를 방지하여 더 안정적인 코드를 작성할 수 있습니다. 이러한 오류는 프로그램이 예상치 못한 방식으로 중단되게 만들 수 있습니다. 2. **코드 품질 향상**: 개발자가 null을 적절히 처리하도록 강제함으로써 코드의 품질을 향상시킵니다. 3. **명확한 의도 표현**: 변수가 null 값을 ..
-
Test Flight, App Store Connet에서 암화화 문서 관련 규정 매번 설정하지 않는 방법사소한 개발팁 2024. 1. 5. 00:50
** 주의: 다른 블로그에 잘못된 방식으로 개재되되어 있는 경우가 있습니다. 반드시 로 지정해주셔야 합니다. ITSAppUsesNonExemptEncryption 키를 Info.plist 파일에 추가하고 값을 false로 설정함으로써, Xcode에서 수출 제한을 해제할 수 있습니다. 이 설정은 앱이 미국 외에서 수출될 때의 제한 사항을 해제하는 데 사용됩니다. 이 설정을 추가하면 "암호화 누락"과 관련된 경고 메시지가 사라집니다. Info.plist 파일에 아래와 같이 추가하세요: ITSAppUsesNonExemptEncryption 이 설정을 통해 암호화가 제한되지 않은(non-exempt) 것으로 표시되어, 미국 정부에서 정하는 일부 규정을 준수하게 됩니다. 만약 앱이 미국 외에서 수출되지 않는다면,..
-
[Flutter] 똑같아 보이지만 다른 PageView & IndexedStack함께 공부하는 Flutter 2024. 1. 4. 18:28
IndexedStack과 PageView는 둘 다 Flutter에서 다양한 위젯들을 효과적으로 관리하기 위해 사용되는 위젯들입니다만, 사용 목적과 동작 방식에서 차이가 있습니다. IndexedStack: 목적: IndexedStack은 여러 위젯을 겹쳐 놓고 한 번에 하나만 보여주는데 사용됩니다. 여러 위젯 중 하나를 선택하여 화면에 표시하고 싶을 때 유용합니다. 동작: 자식 위젯들은 인덱스 순서에 따라 쌓여 있습니다. IndexedStack 위젯은 현재 인덱스에 해당하는 자식 위젯만 화면에 표시합니다. 인덱스를 변경하면 쌓여 있는 위젯 중 선택된 인덱스의 위젯이 화면에 표시됩니다. IndexedStack( index: currentIndex, children: [ // 여러 위젯들 ], ) PageVi..