본문 바로가기

Swift23

iOS UIKit 튜토리얼 - UITableView - 3 // Section 이번에 포스트에서 진행할 튜토리얼은 UITableView의 Section기능이다. UITableView에는 여러종류의 데이터를 나워서 표현할 수 있는 Section이라는 기능을 제공한다. 흔히 연락처 앱에서 가,나,다 혹은 ABC 순으로 Section을 나워서 보여주는 것을 볼 수 있다. 1. Section 정의하기 section타이틀을 정의한다. 이번 포스트에서는 2개의 타이틀을 정의 하였다. let sections = ["mydata", "mydata2"] 2. 데이터 정의하기 섹션을 2개 정의 하였으므로 데이터도 두개의 데이터를 정의해준다. let myData = [ NameEmail(name: "James",email: "James@gmail.com"), NameEmail(name: "LaLa",.. 2021. 4. 17.
iOS UIKit 튜토리얼 - UITableView - 2 / TableViewCell 커스텀하기 이번 포스트에서는 지난 포스트(lucidmaj7.tistory.com/290)에서 만들었던 TableView의 Cell을 커스텀해보는 방법을 알아 보겠다. TableView Cell은 단순히 Label만 넣을 수 있는게 아니라 다양한 형태의 뷰를 표현하여 데이터를 표현할 수 있다. 예를 들면 카카오톡의 친구목록 UI를 보면 프로필사진, 이름, 알림메시지 등을 보여주고 있다. 이번에는 TableView Cell을 커스텀하여 이름, 이메일 목록이 출력되는 Cell을 만들어 보자 1. TableViewCell UI 레이아웃 수정하기 지난번 추가해놓은 TableViewCell에 두개의 Label을 추가해준다. 하나는 이름이 출력되고 다른 하나는 Email이 출력 될 것이다. Identifier는 MyCell이라.. 2021. 4. 9.
iOS UIKit 튜토리얼 - UITableView - 1 오늘 공부해 볼 iOS의 UIKit은 UITableView이다. UITableView는 보통 리스트를 나타내는 기능을 수행한다. 아래와 같은 화면은 많이 보았을 것 이다. 스크롤로 이루어진 뷰에 콘텐츠를 표시하며 보통 연락처, 설정 화면을 구성하는데 쓰인다. 0. 프로젝트 생성 우선 xcode에서 swift, storyboard기반 iOS application 프로젝트를 생성한다. 1. UITableView 추가 & TableView Cell 추가 다음과 같이 Table View를 찾아 ViewController에 추가해준다. 그다음 Table View Cell을 TableView에 추가해주자. 그리고 추가한 Cell에 Identifier를 설정해준다. "MyCell" 2. ViewController에 .. 2021. 4. 8.
SwiftUI에서 Admob광고 추가하기 SwiftUI로 넘어오면서 Admob광고를 어떻게 추가하느냐가 문제가 되었다. 구글에서는 SwiftUI발표 이후 따로 이에 대해 따로 발표한게 없는 것으로 안다. 다행히 SwiftUI는 완전 새로운 것이 아니기 때문에 하위호환성도 어느정도 가지고 있다. StackOverflow에 다행히 해결 방법이 존재 하였다. # Google AdMob integration in SwiftUI 우선, UIViewControllorRepresentable을 상속받아 GADBannerViewController를 정의한다. import GoogleMobileAds import SwiftUI import UIKit struct GADBannerViewController: UIViewControllerRepresentable .. 2019. 12. 27.
Swift 함수 2 - 함수형 프로그래밍? 0. 함수형 프로그래밍??? Swift코드를 처음 접하게 된다면 적지 않게 난감한 코드가 눈에 들어오는데 바로 함수이다. 앞서 포스팅한 함수는 기존 여타 다른 언어들(절차지향적 언어, 명령형언어 java, C 등등)과 마찬가지 수준이지만 오늘 공부한 함수는 바로 함수형 프로그래밍의 페러다임에 따라 다양한 함수의 사용성을 공부해보고자 한다. 나는 주로 현업에서 Windows 시스템 프로그래밍을 하고 있는 개발자 이기 때문에 C, C++문법에 좀 더 익숙하다. 이런 관점에서 봤을 때 함수형 프로그래밍 언어인 스위프트를 봤을 때 상당히 낯설다. 이론적으로 찾아보면 함수형 프로그래밍의 가장 큰 특징은 프로그램의 상태에 관계없이 항상 같은 결과를 얻어낼 수 있다는 점이다. 이게 무슨말인지 함수형 프로그래밍을 해보.. 2019. 12. 1.
Swift - 함수 0. 스위프트에서 함수를 선언하기 스위프트에서 함수는 아래와 같은 형태로 선언된다. func 함수이름(파라미터1이름: 파라미터1타입, 파라미터2이름: 파라미터2타입 ... ) -> 반환타입 { //코드 return 반환값 } func라는 키워드로 선언되며 파라미터를 이름과 타입 형태로 나열한다. 반환 타입은 -> 뒤에 써둔다. 실제 함수를 선언하고 호출 하려면 아래 예제코드와 같이 하면된다. import Foundation //함수 선언 func plusNum(a: Int, b: Int) -> Int{ return a + b } let result = plusNum( a: 5, b:6) //함수 호출 print(result) 1. 반환값이 있는 없는 함수 선언하기 반환 값이 없는 함수는 Void를 리턴 .. 2019. 11. 27.
Swift 상수, 변수 스위프트에도 상수와 변수의 개념이 존재한다. 상수는 변하지 않는 값을 말하며, 변수는 변하는 값을 말한다. 변수는 var, 상수는 let 키워드를 통해 선언 될 수 있다. 1. 상수 : let 상수는 변하지 않는 값을 저장한다. 아래 예제코드를 보자. import Foundation let a : Int //상수 선언 a = 5 // 값대입 print(a) a = 6 //상수는 변경할 수 없다. a라는 상수를 선언하고 5를 대입하였다. 한번 출력하고 6을 입력할 때 컴파일러는 에러를 내놓는다. /tmp/B9F84CA6-7E22-4113-AE2E-A0D6A98845B4.beSm8X/main.swift:10:3: error: immutable value 'a' may only be initialized on.. 2019. 11. 27.
SwiftUI] 스위프트UI에서 UNUserNotificationCenter 사용하기 지난번 포스트에서 iOS의 UNUserNotificationCenter를 이용해보는 예제를 알아 보았었다. 이번에는 iOS13에서 발표된 SwiftUI를 이용하여 사용할 때는 어떻게 사용하는지 무엇이 다른지 알아 보겠다. 1. SwiftUI에서 viewDidLoad 함수 구현은 어떻게? viewDidLoad는 iOS view생명주기(LifeCycle)에서 뷰가 로드된 후의 작업을 정의할 수 있다. 부모클래스의 함수를 override하여 정의한다. 대부분 윈도우의 MFC나 안드로이드나 이런 방식으로 정의 한다. swiftUI는 UI요소마다 Modifier를 설정하여 속성을 변경한다. SwiftUI에서 Action을 정의할 때에도 같은 방식으로 정의한다. SwiftUI도 다를바가 없다. SwiftUI에서도 .. 2019. 11. 20.
Swift / iOS ] UNUserNotificationCenter를 이용하여 타임 트리거 사용해보기 오늘은 UNUserNotificationCenter를 이용해보는 예제를 작성해 보겠다. 그전에 UNUserNotificationCenter란 무엇인가? Apple 개발자 문서에 따르면.. UNUserNotificationCenter는 앱이나 앱의 익스텐션들과 관련된 여러 알림들을 중앙에서 관리하는 객체라 한다. 이를 사용하기 위해서는 사용자에게 알람을 허락 받는 퍼미션을 물어봐야한다. 알림과 뱃지, 소리 등을 설정할 수 있고 스케줄링으로 푸시를 줄수도 있다 한다. 더 자세한 내용은 개발자 문서를 참고 https://developer.apple.com/documentation/usernotifications/unusernotificationcenter UNUserNotificationCenter - Use.. 2019. 11. 20.