이번주 Flutter 유튜브의 DecodingFlutter 섹션 에는 "Packages versus Plugins?" 라는 제목의 영상이 올라왔다. https://www.youtube.com/watch?v=Y9WifT8aN6o 나도 궁금했지만 찾아보지는 않았던 부분인데, 업로드된 영상의 제목을 보고 바로 클릭해서 봤다. 한글 자막이 없어 100% 이해를 못해서, 인터넷에서 검색을 해서 부족한 부분을 채웠다. 아래 링크에 있는 글이 잘 정리 되어있는 듯하다. https://www.linkedin.com/pulse/difference-between-dart-package-plugin-flutter-leo-uzair Difference Between Dart Package and Plugin in Flutte..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/u9izG/btq8ubfDHQI/r8KYrmkrM8DdUfslO45990/img.png)
왜 Stack의 첫번째 child로 비어있는 SizedBox를 깔아주는 것일까? 현재 참고 하고 있는 Time table 패키지의 코드를 보면 Stack 위젯의 children의 첫번째로 SizedBox를 사용하고 있다. 내부에 의미있는 child도 없는, 빈 box 를 왜 처음에 깔아두는지 몰라서 검색해 보았다. 참고자료1 (링크) Stack 내에서 자리표시자(a syntactic placeholder)로 SizedBox를 사용한다고 한다. SizedBox는 const constructor라서 그렇지 않은 Container에 비해 컴파일러가 더 효율적인 코드를 생성할 수 있다고 한다. 또한 Container는 SizedBox에 비해 많은 properties 와 methods를 가지고 있어서 초기화 하는..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/MvoHz/btq7gWxClEb/BG9tflCM0eX8KQkkUYUTh0/img.png)
나는 Time table을 custom paint를 이용해서 device의 screen에 보여지는 부분에 한해서 그리도록 해주었다. 그리고 Gesture detector를 이용해서 drag 이벤트가 발생할 때마다 main axis(내 경우 vertical)의 픽셀 값 변화량을 가져와서 그만큼 offset을 custom paint에서 주어서 그만큼 x축(vertical 이라) 픽셀 값을 보정해서 다시 그리도록 했다. 직접 screen에 그리는 방식으로 time table을 표현하는 것에는 뭔가 부족한 것들이 많이 보였다. 손가락으로 스크롤링하는 속도가 빠를 때 그만끔 화면도 빨리 지나가는 것처럼 보이고 싶은데 그런 기능을 직접 구현해야 한다던가, 그리려는 time table의 끝에 도달 했을 때(예를 들어..
지금 만들어 보고 있는 scheduler에서 time table을 표현하기 위해 container로 감싼뒤 그안에서 custom paint를 이용해서 time table을 그리려고 하고 있다. 그런데 mediaQuery 를 이용해서 받아오는 context의 size 정보는 parent 위젯의 사용가능 영역에 대한 정보가 아니라, 언제나 device의 full screen 정보(height 와 width 등..) 란 것을 알게 되었다. 그렇다면 child 위젯에서 parent 위젯의 사용가능 영역 정보를 알려면 어떻게 해야하나? LayoutBuilder 를 사용하면 된다. The main difference between Media Query and LayoutBuilder is that Media Que..
- Total
- Today
- Yesterday
- 한빛미디어
- UX
- plugin
- 앱 프로그래밍
- DART
- 앱
- Flutter
- error
- BLE
- 문제 해결
- Syncfusion
- IOS
- 에러
- TextFormField
- hide
- 인사이트
- 디자인
- Chrome
- 플러터
- SizedBox
- 이미지
- Bluetooth
- UI
- addPostFrameCallback
- position
- TextField
- 크롬
- 앱개발
- 다트
- firebase
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | |
7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 | 30 | 31 |