[Swift5] 버튼에 라운드 주기 (버튼 둥글게)


개발을 하다보면 버튼에 간단한 디자인을 입혀야하는 경우가 있습니다.

 

그중 버튼의 꼭짓점부분을 둥글게 해달라는 (라운드처리) 이야기가 간혹 있는데, 이럴때 사용하는 방법입니다.

 

기본 버튼에 라운드를 주는 방법은 쉽습니다.

UIButton.layer.cornerRadius = 8

 

일반적으로 생성한 버튼의 모습

 

아래는 소스입니다.

@IBOutlet weak var btn_info: UIButton!

override func viewDidLoad() {
	super.viewDidLoad()

	//버튼의 라운드 처리
	btn_info.layer.cornerRadius = 8

}

 

UIButton은 UIControl을 상속받으며, UIControl은 UIView를 상속받고 있습니다. (https://developer.apple.com/documentation/uikit/uibutton)

 

Apple Developer Documentation

 

developer.apple.com

특히 상속을 받는 UIView에는 멤버변수로 layer:CALayer를 가지고 있습니다. (https://developer.apple.com/documentation/uikit/uiview)

 

Apple Developer Documentation

 

developer.apple.com

이 layer변수에는 뷰에 그림을 그려줄때 필요한 핵심 애니메이션 정보를 가지고 있는데, 이 layer의 정보를 수정해줌으로 라운드 처리가 가능해지는겁니다.

 

소스를 통해 라운드가 적용된 버튼의 모습

 

위에서 설명한 layer변수를 이용하면 버튼의 색상, 타입지정, 이미지 등록 등 다양한 컨트롤이 가능한데, 이는 본 게시글의 제목의 성격이 달라지므로 다음에 설명하는 시간을 갖도록 하겠습니다.

 

 

버전정보 (v1.0)

 - v1.0 2020.07.02 배포

 

* 저작권에 위반될 수 있는 컨텐츠(이미지, 동영상 등)나 게시글은 삭제되거나 수정될 수 있습니다.

* 문제의 여지가 될 수 있는 컨텐츠의 경우 댓글 달아 주시면 빠른 시일 내에 조치하도록 하겠습니다.

* Karzin은 항상 공부중입니다. 설명이 틀리거나 잘못된 부분이 있다면 의견내주시는대로 수정하도록 하겠습니다.

 

Karzin

abbeea@naver.com


[Swift5] intro 화면 만들기

LaunchScreen.storyboard에서 x초간 딜레이 주기


어플을 만들다보면 초기화면에서 x초간 딜레이 후 메인화면으로 이동하는 경우가 있습니다.

 

그런 경우에는 여러 방법이 있겠지만,

제가 사용하는 방법은 LaunchScreen.storyboard에서 1초정도 딜레이를 주는 방법을 사용하고 있습니다.

 

1. LaunchScreen.storyboard 작업

LaunchScreen.storyboard 클릭

 1.1. ViewController에 원하는 로고 등 작업을 합니다.

Image View를 추가한다던가 작업을 진행합니다.

 

2. AppDelegate.swift 작업

AppDelegate.swift 클릭

 2.1. // Override point for customization after application launch 주석을 찾고, 해당 주석 아래에 sleep(1); 코드를 추가

    func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
        // Override point for customization after application launch.
        sleep(1)
        return true
    }

  --> sleep 함수는 파라미터로 받아온 시간동안 딜레이를 생성 시켜주는 함수입니다. 여기서는 1을 넣었으니 1초가 됩니다.

 

3. 실행 

 --> 실행을 해보시면 1초간 LaunchScreen.storyboard의 내용이 나오고 이후 Main.storyboard로 넘어감을 확인할 수 있습니다.

 

 

 

테스트 정보

 - 맥 미니 (2020) - iPhone SE (1st Gen)

 

버전정보 (v1.0)

 - v1.0 2020.06.30 배포

 

* 저작권에 위반될 수 있는 컨텐츠(이미지, 동영상 등)나 게시글은 삭제되거나 수정될 수 있습니다.

* 문제의 여지가 될 수 있는 컨텐츠의 경우 댓글 달아 주시면 빠른 시일 내에 조치하도록 하겠습니다.

* Karzin은 항상 공부중입니다. 설명이 틀리거나 잘못된 부분이 있다면 의견내주시는대로 수정하도록 하겠습니다.

 

Karzin

abbeea@naver.com



 


[Xcode] 아이폰에서 앱 실행 안되는 문제 해결

 - Could not launch "프로젝트 명"


 

아이폰 에뮬레이터에서 잔뜩 테스트를 진행하다가 실제 아이폰에서 구동을 시킬때 구동이 안될 수 있습니다.

대략 그 느낌은 아래와 같이

더보기

Could not launch "프로젝트 명"

iPhone has denied the launch request.

Internal launch error : ~~~ (길어서 생략)


해결 방법입니다.

아이폰 작업

아이폰-맥 연결 -> 신뢰 -> 암호입력 -> 

신뢰를 하고 암호를 입력합니다.

 

맥 작업 (Xcode)

프로젝트 Run ->  다시한번 Could not launch "프로젝트 명" ->

아이폰 작업

설정 -> 일반 ->

일반 터치

기기관리 ->

기기 관리 터치

개발자 앱 밑에 Apple Development : 애플아이디 ->

Apple Development: 터치

파란색 애플아이디 부분 터치 -> 

파란색 글자(Apple Development: ~) 터치

~앱을 신뢰함 : 신뢰 ->

앱 신뢰

맥 작업 (Xcode)

프로젝트 Run ->

아이폰 작업

앱 실행 및 확인

 

위 작업 한번만 해주시면 연결하신 맥과 아이폰은 계속해서 테스트가 가능합니다.

다만, 새로운 맥에 연결하시는 경우에는 위 작업이 다시 필요하니 잘 숙지해두시면 좋을 것 같습니다.

 

테스트 정보

 - 맥 미니 (2020) - iPhone SE (1st Gen)

 

버전정보 (v1.0)

 - v1.0 2020.06.29 배포

 

* 저작권에 위반될 수 있는 컨텐츠(이미지, 동영상 등)나 게시글은 삭제되거나 수정될 수 있습니다.

* 문제의 여지가 될 수 있는 컨텐츠의 경우 댓글 달아 주시면 빠른 시일 내에 조치하도록 하겠습니다.

* Karzin은 항상 공부중입니다. 설명이 틀리거나 잘못된 부분이 있다면 의견내주시는대로 수정하도록 하겠습니다.

 

Karzin

abbeea@naver.com

 


iOS 14/iPadOS 14 지원기기 리스트 정리!

(WatchOS 7 지원기기 포함!)


오늘 새벽 2시경 WWDC에서 iOS 14를 지원하는 기기가 발표되었습니다.

공개된 영상은 1시간 48분 51초이며, 약 2시간가량 iOS 14의 업데이트된 항목들을 설명하고 있습니다.

 

루머상으로는 iOS 14가 iPhoneOS 14로 변경될 것이라는 이야기가 나왔었는데, 이번 발표를 통해 확인해보니 그렇지는 않은 모양입니다.

 

애플 공식홈페이지(미국)을 참조해보시면(거의 하단) 이번 iOS 14의 지원기기 리스트가 나와있어 정리해보았습니다.

(iPadOS 14 지원기기 리스트도 공식홈페이지(미국)을 참조해보시면(거의 하단) 전부 나오고 있습니다.)

 

- iOS 14 지원기기 리스트

지원기기 초기 iOS 버전 칩셋/메모리 정보
iPhone 11 iOS 13.0 Apple A13 / 4GB
iPhone 11 Pro iOS 13.0 Apple A13 / 4GB
iPhone 11 Pro Max iOS 13.0 Apple A13 / 4GB
iPhone Xs iOS 12.0 Apple A12 / 4GB
iPhone Xs Max iOS 12.0 Apple A12 / 4GB
iPhone Xr iOS 12.0 Apple A12 / 3GB
iPhone X iOS 11.1 Apple A11 / 3GB
iPhone 8 iOS 11.0 Apple A11 / 2GB
iPhone 8 Plus iOS 11.0 Apple A11 / 3GB
iPhone 7 iOS 10.0 Apple A10 / 2GB
iPhone 7 Plus iOS 10.0 Apple A10 / 3GB
iPhone 6s iOS 9.0 Apple A9 / 2GB
iPhone 6s Plus iOS 9.0 Apple A9 / 2GB
iPhone SE (1st generation) iOS 9.3 Apple A9 / 2GB
iPhone SE (2st generation) iOS 13.4 Apple A13 / 3GB
iPod touch (7th generation) iOS 12.3 Apple A10 / 2GB

* iOS 14 지원기기는 iOS 13 지원기기와 동일합니다!

저의 경우 iPhone Xr, SE(1st, 2st gen)을 가지고 있기 때문에 제가 가진 모든 기기가 지원기기 리스트에 들어 있어 기쁘네요.

 

 - iPadOS 14 지원기기 리스트

지원기기 초기 iOS/iPadOS 버전 칩셋 / 메모리 정보
iPad Pro 12.9-inch (4th generation) iPadOS 13 Apple A12Z / 6GB
iPad Pro 11-inch (2nd generation) iPadOS 13 Apple A12Z / 6GB
iPad Pro 12.9-inch (3th generation) iOS 12.1 Apple A12X / 4GB or 6GB
iPad Pro 11-inch (1st generation) iOS 12.1 Apple A12X / 4GB or 6GB
iPad Pro 12.9-inch (2nd generation) iOS 10.3 Apple A10X / 4GB
iPad Pro 12.9-inch (1st generation) iOS 9.1 Apple A9X / 4GB
iPad Pro 10.5-inch iOS 10.3 Apple A10X / 4GB
iPad Pro 9.7-inch iOS 9.3 Apple A9X / 2GB
iPad (7th generation) iPadOS 13.1 Apple A10 / 3GB
iPad (6th generation) iOS 11.3 Apple A10 / 2GB
iPad (5th generation) iOS 10.3 Apple A9 / 2GB
iPad mini (5th generation) iOS 12.2 Apple A12 / 3GB
iPad mini 4 iOS 9.0 Apple A8 / 2GB
iPad Air (3rd generation) iOS 12.2 Apple A12 / 3GB
iPad Air 2 iOS 8.1 Apple A8X / 2GB

* iPadOS 14 지원기기 또한 iPadOS 13 지원기기와 동일합니다!

iPad Air 2의 경우 iOS 8.1부터 시작해서 엄청 오래 지원기기 리스트에 들어가 있습니다.(축하드립니다!)

저는 오래된 iPad Pro 9.7-inch를 사용중에 있어 지원기기에 들어가서 안도랄까, 기쁘달까 어쨌든 아직은 더 써먹을 수 있어서 좋네요!

 

 

 - WatchOS 7 지원기기 목록

지원기기 초기 WatchOS 버전
Apple Watch Series 3 WatchOS 4.0
Apple Watch Series 4 WatchOS 5.0
Apple Watch Series 5 WatchOS 6

저는 Apple Watch Series 3를 사용중에 있어서 이번 업데이트도 지원되네요!

 

 

이번에 발표된 지원기기 목록은 전부 애플 공식홈페이지(미국)를 통해 확인하실 수 있으시며,

저의 경우 제가 소유한 모든 애플 디바이스를 지원하여 지금 정말 굉장히 만족스러운 상태입니다 ㅋ_ㅋ

이 글을 보시는 모든 분들의 디바이스도 지원기기 목록에 들어가 있으면 좋겠네요!

 

 

버전정보 (v1.0)

 - v1.0 2020.06.23 배포

 

* 저작권에 위반될 수 있는 컨텐츠(이미지, 동영상 등)나 게시글은 삭제되거나 수정될 수 있습니다.

* 문제의 여지가 될 수 있는 컨텐츠의 경우 댓글 달아 주시면 빠른 시일 내에 조치하도록 하겠습니다.

* Karzin은 항상 공부중입니다. 설명이 틀리거나 잘못된 부분이 있다면 의견내주시는대로 수정하도록 하겠습니다.

 

Karzin

abbeea@naver.com

 

이야기를 하지 않았지만, 아이폰XR을 구입하고 이제 1년이 되어가고 있습니다. (올 초 구입)

 

갤럭시S8+를 사용하고 있었지만, 안드로이드의 특유 느려짐이 점점이라기보단 계속 보이기 시작하더라구요.

 

나름 고민을 해보았지만, 결국 바꾸게 되었습니다. (마침 개발용 아이폰이 필요한 것도 있었습니다.)

 

특히 노트9, S9+, 아이폰을 두고 굉장한 고민을 했습니다. 결국은 아이폰을 선택하게 되었는데..

 

그런데 여기서 웃긴건 작년 9월 13일에 블로그에 아이폰관련 게시글을 써본적이 있었습니다. - 새로운 아이폰 그리고

 

사더라도 '아이폰XR'을 살 것 같다고. 아래는 제가 아이폰XR을 선택한 이유입니다.

 

이유로는

  첫째, LCD인 점(저만 그런가요? OLED 제 눈엔 너무 밝아요.)

  둘째, XS와 프로세스가 같다는 점과 동시에 당시의 S9, 노트9보다도 훨~씬 성능면에서 우위에 있다는 점.

  셋째, 운영체제(iOS)의 후속지원(길죠.. 정말 길죠.. 안드로이드를 포기한 결정적 이유입니다.)

  넷째, 절대 죽지 않는 배터리!!

  다섯째, 안전한 은행앱 사용(심적으로도 굉장한 안정감)

였습니다.

 

그리고 구입 후 iOS 13.3가 올라간 지금도 굉장히 만족하고 있습니다.

 

다만, 사용하며 느낀 단점으로는

  첫째, 조금 두껍고 묵직한게 느껴집니다.

  둘째, 개인적으로 아이폰XR보다 갤럭시S8+ 카메라가 더 이뻐요.. (싸구려눈이라그런가?)

  셋째, 아, 노치.. 노치... 노치!!!

정도 였습니다.

 

이렇게 여러 고민 끝에 구입한 아이폰XR은 결국 보안, 성능, 가성비를 고민하여 구입하게 되었구요,

운영체제만 지원해준다면 제가 생각하기로는 5년은 더 쓸 것 같습니다. (뽕 뽑고도 남겠네요.)



새로운 아이폰 그리고

(아이폰 Xs, 아이폰 Xs Max, 아이폰 Xr, 애플워치, iOS12)



새로 발표된 애플 아이폰, 애플 워치에 대해서 그냥 제 생각을 그냥 주저리주저리 작성했습니다.

 


오늘, 한국시간으로 새벽 2시경 아이폰Xs와 아이폰Xr, 그리고 애플워치4가 발표되었습니다.


이후 실시간 검색어 순위권을 계속해서 자리할 만큼 뜨거운 관심을 받고 있는데요,

아쉽게도 저는 기다리다 지쳐 130분경에 잠이 들어버려 발표를 직접적으로 확인하지는 못했습니다.

 


저는 아이폰 유저는 아니지만(친구한테 빌려서 만져본 적 이외에는 써본 적이 없습니다.) 

조금 아쉬운 점 중 하나는 아이폰se2가 나오면 구매의사가 조금 있었는데

아이폰se2는 루머일뿐 예정에는 없는 것인가 싶더라구요..


그 와중에 아이폰se는 단종이 된다고아이폰 중에서는 se가 가장 가성비가 좋았다고 생각했는데 ㅠㅠ 많이 아쉽네요.

 


그나저나 아이폰Xs도 아이폰Xr도 디자인은 이번에도 노치가;;;

제 친구는 노치가 이쁘다고 그러던데 저는 공감을 못하다 보니;;

더불어 하드웨어에 있어서도 Xr은 램3기가 Xs는 램 4기가.. 4기가도 조금 아쉽다고 느껴지는데 3기가는.. 

(물론 iOS의 최적화가 잘되어 있어 램을 그렇게 많이 필요로 하지는 않을 수도 있겠지만, 그래도 역시 아쉽다고 느껴지는 부분 중 하나네요. 프로세서는 굉장히 좋은데.. 프로세서는!)

만약 (물론, 아직 갤럭시 s8+의 할부가 남아있지만 진짜 만약..) 구입할 기회가 온다치면 저는 Xr을 구입할것 같아요.

어차피 프로세서는 같을때 폰게임을 즐겨하지 않는 저로써는 램도 많이 필요없다보니..

그나마 가격이 저렴한쪽으로 기울것같네요. (비슷한 성능이지 않을까 하고 생각을 하게되어서)


그래도 이번 아이폰Xs와 아이폰Xr에 들어가는 프로세서 A12 Bionic 때문에라도 한번쯤 사용하고는 싶네요.

 


애플워치는 제가 갤럭시 기어s3를 사용 중이라서 그런지 별로 눈에 들어오지를 않더라구요.

디자인도 갤럭시 기어s3가 더 이쁜듯한 느낌이..

물론 저도 아이폰을 사용 중이었다면 애플워치를 사용했을 것 같네요 ㅎㅎ.

 


그리고 iOS1218일날 배포한다니까 제가 사용중인 아이패드도 18일날 바로 올려줘야 겠습니다!!

많은 성능향상이 이뤄졌고, 재밌는 기능들이 추가된 모양입니다만

다른 추가된 기능들 보다 저는 성능향상쪽이 더 많이 기대가 되네요.

 


사실 원래 제가 바랬던 건 아이폰 발표 보다도 최근에 계속해서 언급이 되고 있었던 뉴 맥북에어였었는데요,

저도 맥북에어를 쓰고 있는 만큼 차기 맥북에어에 엄청난 관심을 가지고 있습니다.


맥북시리즈의 가성비 측면에서는 역시 맥북에어가 가장 좋지 않나 싶습니다.


제가 원하는건 8세대 CPU를 단 맥북에어를…. 다음에는 새로운 맥북에어에 대한 발표가 되었으면 좋겠습니다.


그나저나 모하비는 언제 업데이트일지 궁금하네요. 모하비도 엄청 기다리는중인데 ㅠㅠ



피곤하다고 그냥 잠들어버렸는데 어쩌면 저한테는 이득이었네요. 정작 제가 바라는건 새로운 맥북에어 쪽이었으니까요.

새로운 맥북에어 나올가능성을 엄두해서 열심히 총알 준비나 해야겠습니다 ㅎㅎ



발표된 애플 아이폰 사양 정리(비교)

(아이폰 XS, 아이폰 XS MAX, 아이폰 XR)



오늘 새벽 2시 애플은 아이폰 XS, 아이폰 XS MAX, 아이폰 XR을 발표하였습니다.


피곤한 나머지 잠을 자버렸으므로 발표를 지켜보지 못했지만, 호응은 굉장히 좋았던 모양입니다. (주워 들었습니다.)



저는 아이폰 유저는 아니지만, 기회가 되면 부폰으로 사용을 할 계획이 있어서 중고시장을 열심히 지켜보고 있지만,


안드로이드 폰과는 다르게 좀처럼 떨어지지 않는 가격에 경악을 하고 있는 와중,


이런 발표는 제게 있어 군대의 초코파이와도 같은 느낌을 주네요.

(물론 그렇다고해서 시세가 금방 떨어지진 않겠지만 말이죠..)



그래서! 오늘은 발표된 아이폰의 사양을 정리하여 보겠습니다.

(애플 공식홈페이지에서 찾아 정리해보았습니다.)



솔직히 여유만 있다면 저도 부폰으로 써보고 싶네요. 


 

아이폰 XS MAX

아이폰 XS 

아이폰 XR 

 색상

Silver, Black, Gold

Blue, White, Black, Yellow, Coral, Red

 디스플레이

Super Retina HD display 

Liquid Retina HD display

6.5인치 (OLED)

5.8인치 (OLED)

6.1인치 (LCD)

2688 x 1242

2436 x 1125

1792 x 828

 프로세서

A12 Bionic

 메모리

4GB

3GB

 용량

64GB, 256GB, 512GB 

 

64GB, 128GB, 256GB 

 카메라

전면 7MP camera

후면 Dual 12MP wide-angle and telephoto cameras

전면 7MP camera

후면 12MP camera

 무게

208g

177g 

194g

[표 - 아이폰 사양 정리(비교) 참고 : 애플공식홈페이지]


특이한점은 아이폰 XR이 가격이 아이폰XS와 비교했을때 저렴한 만큼 LCD 디스플레이와, 3GB의 메모리를 채택했다는 겁니다.


프로세서는 같다보니, 저처럼 실속주의(?????)자인 사람들에게는 아이폰 XR쪽으로 구매를 결정할 것 같네요.


물론, 지금의 지갑사정상 구입하지 못하는 저로써는 그저 아이폰7 중고값이 내리기만을 기다립니다..


얼른 개발 테스트용으로 쓰고싶.. (본심)



Project 다원 정리


다원 ERP (Core_java)

다원 원격 마우스 (Android)

다원 원격 키보드 (Android)

다원 원격 키보드&마우스 (Android)

다원 PPT원격 리모콘 (Android)

다원 영상편집 (iOS)



오늘은 Project [다원]을 정리하는 시간을 갖도록 하겠습니다.



가끔씩 물어보는 분들이 계십니다. [다원]이란게 뭐냐?


별다른 의미는 없어요 ㅎㅎ 그냥 프로젝트 명을 정하기 힘들어하다가 우리말이었으면 좋겠다는 생각에 여기저기 찾아보다가 다원이라는 우리말이 너무 맘에 들어 사용하게 되었습니다.


그래도 굳이, 왜 [다원]일까? 싶은데, 제가 생각하기로는 모두가 다 원하기도하고, 사랑하는 프로젝트가 되었으면 해서 사용한것도 이유중 하나가 될 것 같습니다.



[다원]이라는 말은 순 우리말로,


다원 - 모두가 다 원하는, 모두가 다 사랑하는 사람


이라는 의미를 가지고 있습니다.



자, 그럼 [다원] 프로젝트 내에 있는 항목들을 살펴 보도록 하겠습니다.


- 다원 ERP (Core - java)

- 다원 원격 마우스 (Android)

- 다원 원격 키보드 (Android)

- 다원 원격 키보드 & 마우스 (Android)

- 다원 PPT 원격 리모콘 (Android)

- 다원 영상편집 (iOS)


6가지의 항목이 있습니다. 앞으로 계속해서 추가될 예정입니다만, 몇가지는 병합되거나, 사라질 수 있음을 미리 공지해드립니다.


참고로 [다원]은 개인 프로젝트입니다. 저 혼자 진행하고 있는 만큼 진행속도가 많이 더딜수 있습니다.



그럼, 하나씩 살펴보도록 하겠습니다.


 - 다원 ERP : ERP Core를 만들고 있습니다. java로 만드는 만큼 Spring등에서 활용이 되도록 할 예정입니다.

 - 다원 원격 마우스 : 오래된 스마트폰 등을 마우스로 사용하면 어떨까 싶어 진행중인 프로젝트중 하나입니다. Android로 제작 후 시간이 될 때 iOS도 지원할 예정입니다.

 - 다원 원격 키보드 : 마우스와 마찬가지로 키보드만 지원되게할 예정입니다.

 - 다원 원격 키보드 & 마우스 : 상단의 두 항목과 합칠까 고민하고 있으며, 키보드와 마우스를 복합적으로 사용할 수 있는 어플을 생각하고 있습니다.

 - 다원 PPT 원격 리모콘 : 가끔 PPT를 이용하여 발표를 할 때가 많은데, 이럴때 스마트폰을 이용하면 어떨까 싶더라구요. 그래서 진행중인 항목입니다. 물론 Android를 먼저 제작한 후 이후에 시간이 될 때 iOS도 지원할 예정입니다.

 - 다원 영상편집(iOS) : iOS에서 기본적으로 지원하는 라이브러리가 괜찮은게 많은거 같아 무료로 제작할 예정입니다.


추가로 문의사항이 있으면 댓글을 달아주시면 감사하겠습니다^^

+ Recent posts