이슈 textField 를 하나 만들어서 PlaceHolder 를 적용했고, 입력이 이루어지는 font 와 placeHolder 의 폰트를 다르게 하고 싶었으나 placeHolder.font 가 적용되지 않았다. 문제의 코드 let textField = UITextField() textField.attributedPlaceholder = NSAttributedString(text: "test Place Holder", color: .gray, font: .systemFont(ofSize: 20)) textField.font = .systemFont(ofSize:10) 원인 TextField 의 font 속성을 Developer site 에서 찾아보면 font 는 attributedText 와 attrib..
Realm 을 사용하기 위해 다음과 같은 모델을 정의했다. class ReviewModel: Object { @objc dynamic var id: Int = 0 @objc dynamic var text: String = "" override static func primaryKey() -> String? { return "id" } } 이렇게 사용하다가 Model 에 Field 를 한개 더 추가한 후, class ReviewModel: Object { @objc dynamic var id: Int = 0 @objc dynamic var text: String = "" @objc dynamic var rates: Double = 0.0 override static func primaryKey() -> S..
button.setTitle("test", for: .normal) button.setImage(UIImage.init(named: "icon"), for: .normal) 로 구성된 버튼이 있다면 button.setTitle("test", for: .normal) button.setImage(UIImage.init(named: "icon"), for: .normal) // top left bottom right 중에 조정할 간격 설정 // 보통 image - title 순으로 배치되므로 // image의 오른쪽 간격을 조정하면 됨 button.imageEdgeInsets = .init(top: 0, left: 0, bottom: 0, right: 0)
// Background func userNotificationCenter(_ center: UNUserNotificationCenter, didReceive response: UNNotificationResponse, withCompletionHandler completionHandler: @escaping () -> Void) // ForeGround func userNotificationCenter(_ center: UNUserNotificationCenter, willPresent notification: UNNotification, withCompletionHandler completionHandler: @escaping (UNNotificationPresentationOptions) -> Vo..
Observable Rx 하면 떠오르는 가장 유명한 클래스 input data를 여러개 가질 수 있다. 데이터가 발행될 때 마다 onNext() 를 호출하며, 모든 데이터가 발행 된 후 onComplete() 를 호출하고 dispose() 한다.dd println("========== Observable test ==========") Observable.just("i", "am", "ywlee", "861009") .subscribe( { // onNext() println("onNext() = ${it}") }, { // onError() println("onError() ${it.localizedMessage}") }, { // onComplete() println("onCo..
Node.js + forever module 로 백엔드 서버를 구축하여 돌리던 중, Forever log 에 아래와 같은 메세지가 떳다. Error: Connection lost: The server closed the connection. at Protocol.end (/home/ywlee/LifeCleanAPI/node_modules/mysql/lib/protocol/Protocol.js:112:13) at Socket. (/home/ywlee/LifeCleanAPI/node_modules/mysql/lib/Connection.js:97:28) at Socket. (/home/ywlee/LifeCleanAPI/node_modules/mysql/lib/Connection.js:525:10) at emi..
Custom View 를 만들때, depth 를 한번더 늘리는 dummy layout 을 없애기 위해 필요한 태그 (xml depth 에 따라 랜더링 성능이 결정되기 때문에 뎁스가 늘어날 수록 성능면에서 치명적이라고 볼 수 있음.) 예시 아래와 같은 custom view 가 있다. cusom_button.xml 소스 CustomButton.kt 소스 package com.example.mergetest import android.content.Context import android.util.AttributeSet import android.view.LayoutInflater import android.widget.LinearLayout class CustomButton @JvmOverloads cons..
Error constructor fragmentstatepageradapter(fragmentmanager)' is deprecated. deprecated in java ViewPager 를 FragmentPager 로 이용할 때 아래와 같은 경고 문구를 만날 수 있다. Why 생성자를 타고 들어가면 아래처럼 Deprecated 되었으니 FragmentPagerAdapter(FragmentManager, Int) 생성자를 이용하라고 나옴. /** * Constructor for {@link FragmentPagerAdapter} that sets the fragment manager for the adapter. * This is the equivalent of calling {@link #Fragme..
안드로이드는 기본적으로 달빅 가상머신이 JIT(Just in Time) 방식으로 컴파일을 했음 JIT 방식은 application 이 실행되는 순간 소스코드를 컴파일 하는 방식이기 때문에 실행속도 및 메모리 측면에서 많은 이슈가 있었음 이에 안드로이드 5.0 (롤리팝) 부터는 달빅을 버리고, AOT(Ahead of Time) 방식으로 컴파일을 하게 됨 AOT 방식은 application 이 설치되는 순간 소스코드를 컴파일 하여 준비시켜 놓는 방식으로 실행속도 및 메모리 측면에서 이점을 가져갈 수 있지만, 그만큼, 앱이 차지하는 용량에서 JIT 방식보다는 불리한 면이 있음. --- 안드로이드 N (누가) 부터는 AOT, JIT 방식을 혼합하여 이용하고 있음.
- Total
- Today
- Yesterday
- 뉴스룸
- php
- git hub
- linux
- 노드
- 깃헙
- Swift
- 손석희
- CentOS
- 배열
- C
- 스위프트
- BBC 가쉽
- 서버
- nodejs
- mysql
- Phaser
- 점유율
- IOS
- Kotlin
- GIT
- C언어
- 리눅스
- Android
- xcode
- node.js
- 앵커브리핑
- 안드로이드
- Node
- Asterisk
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |