전체 글
-
pixel 과 points, dp의 관계 그리고 UIImageiOS 2024. 5. 10. 01:05
픽셀이란?픽셀 (Pixel)은 가장 작은 단위의 디스플레이 요소입니다. 흔히 "화소"라고도 불립니다. 픽셀은 RGB 색상을 조합해서 색을 표현합니다. 즉 Red, Green, Blue 에 대한 값을 저장합니다. 각 색을 채널이라고 한다면, 한 채널은 0~255까지의 값을 가질 수 있어서 2^8개의 값을 표현할 수 있습니다. 따라서 한 픽셀은 256 x 256 x 256 = 16,777,216 가지의 색상을 생성할 수 있다는 걸 의미합니다. 이를 트루 컬러 시스템 (True Color system) 으로 부릅니다. 해상도 = 가로 x 세로 픽셀의 총 개수이 픽셀의 가로 x 세로의 총 개수가 해상도가 되며, 당연히 더 높은 해상도는 더 선명한 이미지를 제공합니다. 밀도요즘은 높은 해상도의 사진, 영상 등을 ..
-
Visual Studio Code - Short cut Cheet sheetDev 2024. 4. 30. 12:11
줄 이동 : option + ↑ / ↓줄 복사 : shift + option + ↑ / ↓줄 정렬 : shift + option + f여러 줄 선택 (키보드) : cmd + option + ↑ / ↓여러 줄 선택 (마우스) : shift + option + 마우스 드래그여러 단어 선택 : cmd + d이전 커서로 돌아가기 : cmd + uFlutterstateless class 자동완성: stlessstateful class 자동완성: stful# Referencehttps://code.visualstudio.com/shortcuts/keyboard-shortcuts-windows.pdf
-
[Flutter] 동적 리스트 ListViewFlutter 2024. 4. 29. 03:29
Swift의 UITableView 와 비슷한 역할을 하는 위젯이다.아래처럼 사용할 수 있는데 feeds list가 있다면 이를 동적으로 보여준다.ListView.builder 를 사용한다List feeds = [...]@overrideWidget build(BuildContext context) { return ListView.builder( padding: const EdgeInsets.all(20), scrollDirection: Axis.vertical, itemCount: feeds.length, itemBuilder: (context, index) { return FeedWidget(recruit: feeds[index]); }, ..
-
[SwiftUI] Identity, lifetime, dependenciesSwiftUI 2024. 3. 29. 15:52
WWDC21 Demystify SwiftUI 를 보고 개인적인 생각을 정리한 내용입니다. SwiftUI는 선언적 UI, 즉, 뷰가 어떻게 바껴야 하는지 미리 정의해두는 것이다. 따라서 SwiftUI가 우리의 앱을 어떻게 바라보는지에 대한 이해가 필요하다. SwiftUI가 앱을 다룰지에 대한 핵심은 3가지. Identity, lifetime, dependencies를 이해해야 한다. # Identity 제일 먼저 뷰를 어떻게 구분할 것인가에 대한 개념이 필요하고, 이를 Identity라고 부른다. Identity가 동일하면 같은 뷰로 바라보는 것이다. ## Identity Type 모든 뷰는 Identity를 갖는다. 종류로는 명시적, 구조적(explict, structural) Identity가 있다. ..
-
SwiftLint SPM으로 설치하기 (using Swift Package Build Tool Plugin)iOS 2024. 3. 22. 14:38
새 프로젝트에 lint를 적용해 보려고 하니, 기존에 cocoapods나 brew에 관련된 설명만 있고 spm만으로 설치하는 것에 대한 내용이 잘 없어서 적어본다. 설치 방법이 다양하듯이 lint를 실제로 사용하는 방법도 몇 가지 있는 것 같은데, 이것저것 설치하기가 싫어서 Swift Package Build Tool Plugins 로 설치했다. Swift Package Build Tool Plugins 3줄 요약 1. Target 'None' 으로 패키지 추가. 2. SwiftLintPlugIn 추가. (using Swift Package Build Tool Plugins) # 1. Add Package 먼저 SPM으로 패키지를 추가한다. 정석 방법 대로. 단! 이때 Target은 None으로 설정해줘..
-
NotOpenSSLWarning: urllib3 v2 only supports OpenSSL 1.1.1+ 에러 해결Dev 2024. 3. 16. 17:43
selenium webdriver 를 사용해 Chorme 창을 열 때 아래 warnings를 만났다. NotOpenSSLWarning: urllib3 v2 only supports OpenSSL 1.1.1+, currently the 'ssl' module is compiled with 'LibreSSL 2.8.3'. See: https://github.com/urllib3/urllib3/issues/3020 warnings.warn( urllib3 v2 가 OpenSSL 1.1.1+ 를 지원하지 않는다는 것 같다. 아래 커멘트를 입력해 새로운 urllib3 버전을 다운받으면 해결! brew install openssl@1.1 pip3 install urllib3==1.26.15
-
[Flutter] 상대 시간 표시하기Flutter 2024. 1. 28. 16:45
날짜를 표기할 때 몇일 전, 3개월 전 과 같이 상대 시간을 표기해주고 싶을 때 timeago 패키지를 사용해줄 수 있다. 1. timeago 패키지를 추가한다. // pubspec.yaml dependencies: flutter: sdk: flutter timeago: any 2. import 한다. import 'package:timeago/timeago.dart' as timeago; 3. timeago 사용하기 원하는 언어를 지정해줄 때 locale을 사용한다. 아래는 한국어 표기 예시다. final createdDate = DateTime.now(); // 원하는 DateTime ... Text(timeago.format(createdDate, locale: 'ko')