DART
-
[Flutter] Column 안에 Widget과 List<Widget>을 함께 쓰고 싶을 때Flutter 2024. 7. 25. 23:34
Column 안에 Text와 List을 함께 보여주고 싶은 경우가 있다.예를 들어 어떤 '지원 목록'을 나타내야 할 때 아래와 같이 쓰고 싶다.Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ const Text('지원 목록'), appliedList.map((applied) => _appliedView(applied)).toList() ]) 하지만 위 코드는 컴파일 에러가 발생한다. children 안에서는 하나의 아이템, 즉 Widget이 와야 하는데 거기에 List를 넣어서 문제라는 거다.The element type 'List' can't be assigned to the list type 'Widget'.da..
-
[Flutter] Don't use 'BuildContext's across async gapsFlutter 2024. 6. 22. 22:59
아래와 같은 Warning 메시지를 만날 때가 있다.Don't use 'BuildContext's across async gaps. Try rewriting the code to not reference the 'BuildContext'.dartuse_build_context_synchronously 예를 들면 아래와 같은 상황이다.버튼을 눌렀을 때 비동기 동작을 수행할 때 ! 주로 네트워크 통신이 될텐데작업이 성공이면 pop, 실패면 alert을 띄워주고 싶다.이때 context를 사용하게 되는데 비동기 작업 직후에 context 바로 사용하면 안된다고 경고를 주고 있다.ElevatedButton( onPressed: () async { await viewModel.performAsync..
-
[Dart] Libraries & imports (접근제한자)Flutter/dart 2024. 5. 19. 22:35
1. Public별도로 명시하지 않으면 기본적으로 Public. 다른 모든 클래스나 파일에서 접근이 가능하다.2. Private변수나 메서드 이름 앞에 _ 를 붙이면 된다.해당 클래스나 라이브러리 내에서만 접근이 가능하다.3. library (라이브러리 스코프)같은 library로 묶인 파일들은 패키지의 private 멤버에 접근할 수 있다.part - 한 라이브러리 파일 내에서 서브파일들을 지정한다.part of - 라이브러리의 서브파일은 라이브러리의 private 변수에 접근할 수 있다.library.dart (메인 라이브러리 파일)library my_library;part 'part1.dart';part 'part2.dart';class LibraryClass { String _privateVar..
-
[Flutter] asset Image 추가하기Flutter 2024. 1. 28. 16:24
1. 추가할 Asset의 경로를 지정해준다. 2. AssetImage 사용하기 3. 크기 지정하기 (feat. BoxFit) #1. 추가할 Asset의 경로를 지정해준다. 이미지를 먼저 추가해보자. ~/assets/image/ 로 폴더를 추가하고 이 밑에다가 image를 추가하려고 한다. 아래와 같이 폴더를 만들어줬다. pubspec.yaml 파일에 에셋의 경로를 지정해줘야 한다. 나의 경로는 assets/images/ 이다. #2. AssetImage 사용하기 이제 이미지를 추가하면 된다. Image( image: AssetImage('assets/images/my_image.png'), ), #3. 크기 지정하기 (feat. BoxFit) 이미지를 원하는 크기를 지정해주려면 width, height를..