Error Value of optional type 'CGFloat?' must be unwrapped to a value of type 'CGFloat' 옵셔널 타입의 'CGFloat?' 값은 반드시 'CGFloat' 값으로 unwrapped 되어야 한다. Why ? 아래와 같은 함수가 있다. 1234567891011 func getRatio(x1:CGFloat, y1:CGFloat) { // 공식 - x1:y1 = x2:y2 // y2 = (y1 * x2) / x1 var x2:CGFloat = 1.0 var y2:CGFloat y2 = (y1 * x2) / x1 print("result 1 : \(y2)") }Colored by Color Scriptercs 그리고 다음과 같이 호출한다. 1234l..
ERROR Could not find com.android.tools.build:aapt2:3.2.1-4818971. WHY ? Gradle 3.2.1 로 업데이트하면서, repo 에서 해당 모듈을 찾지 못함. Solved (해결...을 위한 노력) 우선 project-gradle 의 allprojects 에 google() 이 없기 때문에..(아래사진) 추가한다 * Repo 에서 aapt 를 찾을 수 있도록, allprojects 에 google() 을 추가해주면 대부분 해결된다. 다시 추가한 후 빌드해보면, 다른 에러가 나온다.. (여기서부턴 다른 에러 해결방법) Configuration 'compile' is obsolete and has been replaced with 'implementatio..
Error 에러는 아니다.이 문구는 Google Search 에 당신의 앱이 인덱싱 되지 않았으니, 최소 하나의 ACTION_VIEW 를 Manifest 에 추가하라는 문구입니다. Google Search 라는 것이, google playstore 의 Search 인지, Google Website 의 Search 인지는 아직 명확히 알아내지 못했습니다. 하지만, 구글갓이 하라니까 해야죠 Solved Manifest.xml 의 최소 한개의 activity 에 ACTION_VIEW 를 추가하면 해결됩니다. ** 수정 이전 ** 수정 이후
UIActivityIndicatorView 를 이용한 간단한 로딩 뷰 띄우기 (뷰 교체 형식) 1. UIViewController 를 상속받을 ExtensionVC.swift 를 하나 만든다. 2. ExtensionVC.swift 에 extension 하여 아래와 같은 코드를 작성한다. import UIKit class ExtensionVC: UIViewController { override func viewDidLoad() { super.viewDidLoad() } } extension UIViewController { class func displaySpinner(onView: UIView) -> UIView { let spinnerView = UIView.init(frame: onView.bound..
What is UICollectionView ? Apple 개발자 사이트에서 UICollectionView 를 소개하는 이미지 ** 안드로이드의 RecyclerView -> GridLayoutManager How to implement UICollectionView ? Step 1) Create Project 구현을 위해 싱글 뷰 앱 프로젝트를 생성하자. Step 2) add Collection View controller in storyboard Main.storyboard 를 열어 기존에 존재하는 view controller 를 삭제한다.빈 스토리보드에 Navigation Controller 를 추가한다. Navigation Controller 에 기본적으로 달려있는 root view controll..
VersionCodenameAPIDistribution2.3.3 - 2.3.7Gingerbread100.2%4.0.3 - 4.0.4Ice Cream Sandwich150.3%4.1.xJelly Bean161.1%4.2.x171.5%4.3180.4%4.4KitKat197.6%5.0Lollipop213.5%5.12214.4%6.0Marshmallow2321.3%7.0Nougat2418.1%7.12510.1%8.0Oreo2614.0%8.1277.5%2018년 10월 26일까지 7일 동안 수집된 데이터 배포율이 0.1% 이하인 버전은 표시되지 않습니다. 참조 : 안드로이드OS점유율
Story Board 는 UI 와 전체적인 화면 구성을 파악하는데 좋은 구조이지만, 협업 등 소스코드 형상관리에 약간의 문제가 있는 경우가 있다. 필요에 따라 Story Board 없는 프로젝트로 진행하고 싶을 때, 아래와 같이 진행하면 된다. STEP 1) Project 생성 STEP 2) info.plist 수정- info.plist 를 연다.- Main storyboard file based name 항목의 key/value 를 삭제한다. STEP 3) 새로운 View Controller 생성- new file > Cocoa Touch Class > UIViewController > xib 체크 STEP 4) AppDelegate.swift 수정 import UIKit @UIApplicationMa..
에러 내용 Type '' does not conform to protocol '' 원인 / 해결 자바를 했던 사람들이라면 익숙할 만한, implementation 에러다. 어떤 interface 를 implement 했는데, 해당 interface 의 함수를 구현하지 않아서 나는 에러. iOS 에서는 delegate 라고 하는듯. 내가 어떤 Delegate 를 사용하겠다고 특정 class 에 명시했으면, 해당 delegate 에 속해있는 함수도 같이 정의해 주어야 함.
- Total
- Today
- Yesterday
- 스위프트
- xcode
- GIT
- 배열
- 손석희
- mysql
- 리눅스
- git hub
- CentOS
- nodejs
- 앵커브리핑
- linux
- 깃헙
- C언어
- Phaser
- php
- C
- 안드로이드
- Kotlin
- Node
- 서버
- Android
- 뉴스룸
- Swift
- 점유율
- Asterisk
- BBC 가쉽
- 노드
- node.js
- IOS
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |