본문 바로가기

전체 글131

서브스크립트에 관하여 서브스크립트(Subscript) -클래스, 구조체, 열거형에서 컬렉션, 리스트, 시퀸스의 등 타입의 요소에 접근하기 위한 바로가기 첨자로 단축 문법이다. -별도의 getter, setter 메서드를 구현하지 않아도 값을 가져오거나, 값을 설정해줄 수 있다. -해당 인스턴스 이름 뒤에 [ ] 기호로 묶고 안에 값을 넣음으로써 서브스크립트를 사용한다. -Array(배열)안의 원하는 index 값에 접근하고 싶을 때, Array[index]를 통해 값에 접근할 수 있는 것, Dictionary(사전)의 key를 통해 값에 접근하고 싶을 때, Dictionary[key]를 통해 값에 접근할 수 있는 표현들이 서브스크립트를 말한다. -단일타입에 여러개의 서브스크립트를 정의할 수 있다. Array에서 서브스크립트 .. 2023. 1. 28.
오버라이딩(Overriding)에 관하여 오버라이딩(Overriding) -공식문서에 따르면 오버라이딩은 "하위 클래스가 슈퍼클래스로부터 상속되는 인스턴스 메서드, 타입 메서드, 인스턴스 프로퍼티, 타입 프로퍼티, 서브스크립트 등이 사용자 지정 구현이 가능한데 이것을 오버라이딩이라고 부른다." ( 쉽게 말해 "재정의") -서브클래스가 슈퍼클래스로부터 상속받은 메서드나 프로퍼티 등을 재정의 해주는 키워드로 사용 방법은 정의하기 전에 "override" 키워드를 붙여주는 것이다. 만약 슈퍼 클래스에 재정의해줄 대상이 없는데 override 키워드를 붙이면 컴파일 에러가 발생한다. -서브클래스에서 슈퍼클래스의 특성(메서드, 프로퍼티 등)을 재정의 했을 때, 슈퍼클래스의 특성도 같이 서브클래스에서 활용하고 싶다면 "super" 프로퍼티를 사용하면 된다.. 2023. 1. 26.
Infinite Carousel 구현 위 사진처럼 무한히 보여주는 Carousel을 구현하는 방법에 대해서 설명해보려고 한다. 이것을 구현하기 위해 너무도 많은 Carousel 관련 블로그를 보았다.(머리가 그만큼 안좋음.) 다른 블로그들에는 쉽다고 하는데.. 왜 나는 하루종일 걸렸을까... Carousel -컨베이어 벨트처럼 이어지는 뷰를 말한다. -어느 방향으로 스크롤하든 무한으로 이어질 수 있다. -포커스되어 있는 cell이 아니라면 크기를 작게. -타이머를 이용하여 자동으로 스크롤. -스크롤에 맞춰 pagecontrol의 currentpage 변경 1. CollectionView 설정 중요한 것만 말해보면 1) 컬렉션 뷰 안의 inset을 설정해주는 것으로, cell을 가운데에 위치시키기 위해 left, right 각 inset을 넣.. 2023. 1. 21.
Custom Splash 화면 iOS에서는 런치스크린(LaunchScreen)을 통해 Splash 화면을 구성한다. 런치스크린에 애니메이션, 폰트가 적용된 라벨 등을 넣고 싶은데 내가 방법을 못 찾는건지, 아예 불 가능한건지 모르겠다. 그래서 Splash 화면인 척하는 뷰를 만들어서 대용해 볼 것이다. 1. MainViewController와 SplashViewController를 만들고 꾸미기. -원하는대로 꾸며주고 나서 두 가지 뷰 모두 스토리보드에서 Storyboard ID를 지정해주기. Class : CustomTabBarViewController Storyboard ID : TabBar Class : CustomSplashViewController Storyboard ID : CustomSplash -필자는 UITabBarC.. 2023. 1. 17.
Google AdMob(애드몹)에 관하여 앱의 사용자가 많아지면 앱 유지 비용이 상당히 들 것이다. 유지 비용을 충당하기 위해서는 앱 서비스 내에서 수익을 창출해야 한다. 앱 서비스를 통해 수익을 창출하려면 어떤 방법들이 있을까? 거의 모든 앱에서 사용하는 수익 창출 방법은 광고를 넣는 것이다. 광고를 넣는 방법도 다양하지만, 그 중에서도 간편하게 할 수 있는 구글 애드몹을 사용해볼 것이다. Google AdMob(애드몹) 광고를 넣기 전에 미리 해야 할 일들. 1. 구글 AdMob 가입하기. -> https://apps.admob.com/v2/home 2. Google AdMob에서 앱을 추가하기. 3. 광고 단위 추가. 시작 1. Google 모바일 광고 *SDK를 앱에 통합시켜야 한다. 2. Info.plist에서 편집해주기 Key : G.. 2023. 1. 15.
CGPoint, CGSize, CGRect에 관하여 기본 개념 View를 구성할 때 컨텐츠들의 위치와 사이즈를 모두 정해주어야 하는데, 위치를 표현하는 x와 y 사이즈를 표현하는 width와 height 가 있다. 따라서 뷰를 구성하기 위해서는 x, y, width, height 모두 알아야 한다. CGPoint -공식문서의 정의에는 "2차원 좌표계의 점을 포함하는 구조체" 라고 나와있다. 기본개념에서 설명했듯이 뷰의 위치 좌표인 x, y를 나타내는 구조체이다. -데피니션을 보면 이렇게 구현되어 있다는 것을 알 수 있다. -CGPoint를 통해 뷰의 위치를 파악할 수 있다. CGSize -공식문서의 정의에는 "너비와 높이 값을 포함하는 구조체" 라고 나와있다. 요거는 width와 height를 나타내는 구조체이다. -데피니션 -CGSize는 뷰의 크기를 .. 2023. 1. 12.