일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Observable
- junit
- PagingLib
- php
- RxKotlin
- google play
- list
- android13
- GCP
- Kotlin
- node
- 테스트 자동화
- MediaPlayer
- mvvm
- SwiftUI Tutorial
- node.js
- databinding
- rx
- SWIFTUI
- MotionLayout
- Reactive
- 동영상
- Android
- Android 13
- Animation
- 인앱결제
- Koin
- mysql
- MediaSession
- paging
- Today
- Total
목록전체 글 (142)
봄날은 갔다. 이제 그 정신으로 공부하자
Dispatch Queue란? GDC(Grand Central Dispatch) Dispatch Queue는 동기 or 비동기식으로 Task를 수행할 수 있는 강력핟 도구 입니다. 개발자는 Dispatch Queue를 사용하여 그동안 별도의 Thread를 통해 수행하던 거의 모든 Task를 수행할 수 있습니다. Dispatch Queue의 장점은 사용하기 쉽고 Thread 코드보다 Task를 실행이 더 효울적이라는데 있습니다. Dispatch Queue는 "큐"라는 이름에서 알 수 있듯이 FIFO(First-In, First-Out) 형태의 자료 구조를 가지므로 Dispatch Queue에 추가된 Task는 항상 추가된 순서대로 시작되며 Serial과 Concurrent 두가지 타입을 가집니다. Seri..
이번 글에서는 Text에 따라 동적으로 변하는 영역을 가지는 레이아웃을 만들어보도록 하겠습니다. 이전 글과는 다르게 이번에는 3가지 방법을 사용해볼까 합니다. - 첫번째는 스토리보드를 사용한 방법 - 두번째는 스토리보드 사용을 최소화하고 프로그래밍으로 처리하는 방법 - 마지막 세번째 방법은 프로그래밍으로 처리하지만 오토레이아웃을 사용하지 않는 방법 무엇을 만들 것인가? 아래와 같은 레이아웃을 만들어보겠습니다. 개발하다 보면 자주 접하는 아주 흔한 레이아웃이네요. ^^ 정석적으로 하면 왼쪽에 UILabel 한개만 놓고 Text의 일부 색상만 변경해 레이아웃을 구성하는게 맞는 방법이지만 지금은 그렇게하면 곤란하므로 여기에서는 일부러 복잡하게 "총 1,234 건"을 3개의 UILabel로 나누어 만들어보도록 ..
이번 글에서는 "라운드 프레임 버튼"을 두가지 방식("스토리 보드"와 "코딩으로 직접 추가")으로 만들어 보겠습니다. 스토리 보드로 라운드 프레임 버튼 만들기 우선 ViewController 중앙에 아래와 같이 UI 버튼을 추가합니다. 버튼을 중앙에 정렬 되도록 아래 그림과 같이 오토레이아웃 값을 설정해줍니다. 라운드 프레임 처리를 위해 Identity Inspector의 User DefinedRuntime Attributes에 아래와 같은 속성값을 입력해 줍니다. 추가로 Attributes Inspector로 이동해 View 부분의 Drawing 관련 부분의 Clip to Bounds를 체크해 줍니다. 추가로 오토레이아웃 설정에 width 값을 추가해줍니다. 자 이렇게 스토리보드를 사용해 1dp의 검은..
예전에 숫자에 콤마를 추가하는 글을 게시한 적이 있었는데 거기에 iOS 관련된 부분이 없어 이번 글을 통해 iOS에서 숫자에 콤마를 추가하는 방법에 대해 설명하도록 하겠습니다. https://als2019.tistory.com/23 숫자에 콤마 추가 시 주의할 점 개발하다보면 숫자에 콤마를 추가하는 경우(통화 표시)가 자주 발생합니다. 이러한 경우 대부분 아래와 같이 DecimalFormat를 사용해 통화 표시를 추가해 줍니다. val formatter = DecimalFormat("#,###") val cS. als2019.tistory.com 노파심에서 다시 한번 설명하자면 우리나라를 포함한 미국과 영국은 소수 자리수 구분은 마침표(“.”)로 구분하고 3자리를 단위로 콤마(“,”)기호를 표시하지만 소..
개발을 하다보면 Label 영역에 Padding을 주어야 하는 경우가 자주 발생합니다. 그럴때는 UIView를 만들고 SubView로 UILabel을 추가하면서 Leading, Trailing, Top, Bottom space를 Padding할 사이즈만큼 주면 되지만 그렇게 할 경우, Layout이 쓸데 없이 복잡해지니 이럴때는 간단하게 UILabel을 커스텀해서 패딩을 추가할 수 있습니다. Step 1. 커스텀 클래스 추가 우선 UILabel을 상속받은 MyPaddingLabel.swift 파일을 아래와 같이 추가해줍니다. import UIKit class MyPaddingLabel: UILabel { var padding: UIEdgeInsets @IBInspectable var left: CGFlo..
Android 13부터 사용자는 테마 앱 아이콘을 선택할 수 있습니다. 이 기능을 사용하면 지원되는 Android 런처의 앱 아이콘이 사용자가 선택한 배경화면 및 기타 테마의 색상을 상속받도록 색조가 조정됩니다. 이 기능을 지원하려면 앱이 적응형 아이콘과 단색 앱 아이콘을 모두 제공해야 하며 매니페스트의 요소에서 단색 앱 아이콘을 가리켜야 합니다. 사용자가 테마 앱 아이콘을 사용 설정(즉, 시스템 설정에서 테마 아이콘 전환 버튼을 사용 설정)했으며 런처에서 이 기능을 지원하는 경우 시스템은 사용자가 선택한 배경화면 및 테마의 색상을 사용하여 색조 색상을 결정한 후 단색 앱 아이콘에 적용합니다. 홈 화면에는 다음 시나리오에서 테마 앱 아이콘이 표시되지 않고 적응형 또는 표준 앱 아이콘이 대신 표시됩니다. ..
이번 글에서는 Android 13의 새로운 아래 기능에 대해 알아보도록 하겠습니다. 태블릿 및 대형 화면 지원 Graphics (프로그래밍 가능한 shaders) Media (Anticipatory audio routing) 접근성 (Audio description) 핵심 기능 (Open JDK 11 업데이트) 태블릿 및 대형 화면 지원 Android 13은 시스템 UI 최적화, 향상된 멀티태스킹, 개선된 호환성 모드 등 Android 12 및 12L 기능 출시에서 도입된 태블릿 최적화를 기반으로 빌드되었습니다. 테스트의 일환으로 앱이 태블릿과 기타 대형 화면 기기에서 최적으로 표시되도록 합니다. * 자세한 내용은 아래 링크를 참고해주세요. https://developer.android.com/about..
이번 글에서는 Android 13의 새로운 기능 중 개인 정보 보호 및 보안에 관련된 내용에 대해 알아보도록 하겠습니다. Context-registered receiver의 안전한 내보내기 지원 Runtime receiver를 더 안전하게 만들기 위해, Android 13에서는 앱의 특정 broadcast receiver가 내보내져야 하며 기기의 다른 앱이 볼 수 있어야 하는지 여부를 지정할 수 있습니다. Android 13 이상을 타겟팅하는 앱에서 사용할 수 있는 이와 같은 내보내기 구성은 앱 취약성의 주요 원인 중 하나를 방지하도록 도와줍니다. 이전 버전의 Android에서는 receiver가 signature permission에 의해 보호되지 않은 한 기기의 모든 앱이 동적으로 등록된 수신기로 보..