일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- junit
- RxKotlin
- SWIFTUI
- Reactive
- android13
- Android 13
- 테스트 자동화
- databinding
- rx
- PagingLib
- list
- Observable
- Koin
- php
- Animation
- MotionLayout
- GCP
- mvvm
- MediaPlayer
- google play
- mysql
- 인앱결제
- node.js
- paging
- node
- Kotlin
- 동영상
- Android
- SwiftUI Tutorial
- MediaSession
- Today
- Total
목록전체 글 (142)
봄날은 갔다. 이제 그 정신으로 공부하자
이 글은 swiftUI Tutorial 중 3번째 항목인 "Handling User Input" 내용을 기반으로 설명합니다. 전체 소스 및 내용이 궁금하신 분은 아래 링크를 참고해주세요. https://developer.apple.com/tutorials/swiftui/handling-user-input 이 글은 List에 표시되는 데이터의 필터링 또는 정렬이 필요할 때 사용하는 filter 함수와 sorted 함수에 대해 설명합니다. filter filter 함수는 dictionary에 있는 값 중 원하는 값만 가져올 때 사용하는 함수로 Bool 값을 반환하며 true일 때의 값들이 결과에 포함됩니다. Landmark 데이터를 예를 들어 설명하면, 데이터 중 isFavorite 값이 true인 데이터만..
이 글은 swiftUI Tutorial 중 2번째 항목인 "Building Lists and Navigation" 내용을 기반으로 소소하게 알아두면 좋은 내용을 설명합니다. swiftUI Tutorial "Building Lists and Navigation""(아래 링크)와 같이 보시면 더욱 유익합니다. https://developer.apple.com/tutorials/swiftui/building-lists-and-navigation 이번 글에서는 SwiftUI를 사용해 List를 만들어보도록 하겠습니다. 리스트에 사용되는 데이터는 이전 글(https://als2019.tistory.com/97) 또는 위 링크를 참고해주시면 됩니다. 1. 사전 준비 - 리스트에 사용할 데이터 이전 글에서 생성한 l..
이 글은 swiftUI Tutorial 중 2번째 항목인 "Building Lists and Navigation" 내용을 기반으로 소소하게 알아두면 좋은 내용을 설명합니다. swiftUI Tutorial "Building Lists and Navigation""(아래 링크)와 같이 보시면 더욱 유익합니다. https://developer.apple.com/tutorials/swiftui/building-lists-and-navigation Hashable 정수 Hash 값을 제공하는 타입의 프로토콜로 구조체가 Hashable을 상속받아 사용하는 이유는 Hashable 상속받은 구조체의 인스턴스는 set 또는 dictionary의 key로 사용할 수 있기 때문 입니다. set과 dictionary의 key..
이 글은 swiftUI Tutorial 중 1번째 항목인 "Creating and Combining Views" 내용을 기반으로 소소하게 알아두면 좋은 내용을 설명합니다. swiftUI Tutorial "Creating and Combining Views"(아래 링크)와 같이 보시면 더욱 유익합니다. https://developer.apple.com/tutorials/swiftui/creating-and-combining-views @main swiftUI로 앱을 구현할 때 해당 앱의 진입접을 제공하는 어노테이션으로 App을 상속받은 구조체 위에 반드시 @main 어노테이션을 명시해야 하면 한개의 앱에 한개의 @main 어노테이션만 존재해야 합니다. 프로젝트 생성 시 SwiftUI를 기본으로 선택하면 자..
이번 글에서는 변수가 optional인 경우 unwrapping해서 사용하는 방법에 대해 설명하도록 하겠습니다. 아래 두개의 value를 더한다는 가정을 해보도록 하겠습니다. leftValue는 nil을 허영하는 optional이고 rightValue는 optional이 아닙니다. let leftValue: Int? = 3 let rightValue: Int = 5 두 개의 값을 더해보겠습니다. let sum = leftValue + rightValue leftValue가 optional이므로 아래와 같은 에러를 표시하면서 빌드 에러가 발생합니다. Value of optional type 'Int?' must be unwrapped to a value of type 'Int' 이를 해결하기 위해서는 대략..
Splash Screen이란? 많은 Android앱들이 다양한 기능을 지원하고 또 점점 많은 라이브러리를 탑재하다보니 앱의 사이즈가 커져 사용자가 앱을 실행하기 위해 엡 아이콘을 눌러 실제 앱이 실행되는데까지 시간이 걸리는데 이때 사용자에게 첫화면이 보여지기 전까지 자연스럽게 노출되는 화면으로 Android 12에서는 모든 앱에 새로운 앱 실행 애니메이션을 사용하는 SplashScreen API를 지원합니다. android는 앱 실행을 아래와 같이 3가지(Cold Start, Warm Start, Hot Start)로 구분 할 수 있으며, Splash Screen은 아래 3가지 앱 실행 상태 중 "Cold Start"와 "Warm Start"일때만 동작합니다. Cold Start: 앱이 처음부터 실행되는..
너무 android쪽 글만 쓰는 것 같아 이제 짧게나마 다른 분야에 대해서도 글을 작성해볼까 합니다. 우선 iOS부터... ViewController 호출 자신이 속한 storyBoard에 포함된 ViewController를 호출하는 경우, guard let myDetailVC = self.storyboard?.instantiateViewController(withIdentifier: "MyDetailController") else { return } myDetailVC.modalPresentationStyle = .fullScreen self.present(myDetailVC, animated: true, completion: nil) 다른 storyBoard에 포함된 ViewController를 호출..
Android 12는 구글이 주도하는 안드로이드 모바일 운영체계의 12번째 주요 릴리즈로 19번째 버전으로 2021년 2월 18일 안드로이드 블로그에 최초로 발표되고 5월부터 꾸준한 베타 릴리즈가 계획되었고 8월에 플랫폼이 안정되어 정식 버전이 2021년 10월 4일에 AOSP를 통해 최초로 공개 되었습니다. 이후 구글 픽셀폰을 시작으로 삼성, 화웨이, LG 등의 핸드폰 벤더들이 android 12를 지원하고 있습니다. 이렇게 android 12가 공식적으로 공개되고 지원되는 기기들이 늘어감에 따라 개발자들은 android 12가 기존 11에 비해 어느 부분이 변경되었으며 무슨 차이가 있는지 파악하고 이에 대비해야 합니다. 자세한 변경 사항은 이전 글 참고 -> https://als2019.tistory..