본문 바로가기 메뉴 바로가기

Peppo

프로필사진
  • 글쓰기
  • 관리
  • 태그
  • 방명록
  • RSS

Peppo

검색하기 폼
  • 분류 전체보기 (221)
    • Story (13)
    • iOS (143)
      • Error (11)
    • 알고리즘 (43)
    • ETC (7)
    • React-Native (0)
    • CS (Computer science) (3)
  • 방명록

iOS (154)
[iOS] 로컬 푸시 알림 (Local push notification)

푸시알림은 서버를 사용해서 푸시를 보내는 Remote Notification 기기에서 푸시를 보내는 Local Notification 가 있으며 오늘은 Local Notification 에 대해 공부해 보겠습니다. 이걸 만들어 볼거에요 구현 import 푸시를 구현하기 위해 UserNotifications 프레임워크를 import 해옵니다. import UserNotifications 알림 권한 요청 사용자에게 푸시 알림을 받을지 권한 허용 팝업을 띄워줍니다. 위 팝업은 많이 보셨을거에요. 사용자에게 알림권한을 허용받아야 알림이 가게돼요. 먼저, 허용을 받기 위해 팝업을 띄워 주는걸 구현 해보겠습니다. import UIKit import UserNotifications class NotificationV..

iOS 2022. 2. 19. 22:02
구조체(Struct)/ 클래스 (Class)

지난 프로퍼티 시간에 클래스/ 구조체를 잠깐 짚고 넘어갔는데요. 저도 아직 두개의 차이점이 어떤건지 긴가민가 해서 오늘은 클래스/ 구조체에 대해 공부해보려고해요! 구조체와 클래스 (Structures and Classes) 프로그램 코드를 조직화 하기 위해 일반적으로 사용되며, 구조체 및 클래스에 프로퍼티와 메소드를 정의해 기능을 추가할 수 있습니다. 어떻게 보면 같지만서도 서로 다른데 둘의 공통점과 차이점을 보겠습니다 !! 공통점 서로 다른 타입들을 하나로 묶을수있다. (이런식으로요) class VideoMode { var resolution = Resolution() var interlaced = false // Bool var frameRate = 0.0 // Double var name: Stri..

iOS 2022. 2. 16. 21:29
[iOS] Alamofire - GET

오늘은 네트워크통신을 쉽게 도와주는 라이브러리 중 'alamofire'를 공부해보려고 합니다. 들어가기전에 `나는 CocoaPods 사용법을 모른다` 하시는분은 여기 링크에서 설치방법을 읽고와주세요 Alamofire란? Apple에서 네트워킹 작업을 가능하게 해주는 URLSession을 기반으로 만들어진 라이브러리 이며, 더 간결하고 쉬운방법으로 통신할 수 있게 해줍니다. 설치 (CocoaPods) Podfile에 아래 내용을 추가 후 pod install을 해주세요. (22년 2월 13일 기준. 최신 버전 5.5) pod 'Alamofire', '~> 5.5' 통신 방법 (GET) 먼저 GET에 대해 알아봅시다. 형태는 이렇게 생겼어요. 1. url: 데이터를 요청할 URL 2. method: 메소드형..

iOS 2022. 2. 13. 18:28
[iOS] UITextField placeholder 위치 조정

TextField UI를 구현하다 보면 아래처럼 글을 입력하기 전에 반투명 상태로 보이는 글씨가 있죠 ? 이걸 placeholder라고 불립니다. 근데 너무 붙어있죠.. 조금 띄우고 싶은데 오늘은 placeholder의 위치를 조정하는걸 공부해 보려고합니다 !! 먼저 아쉽게도 placeholder 위치를 잡아주는 TextField의 속성이 없어서 따로 만들어줘야해요. extension으로 UITextField에 leftPadding() 메소드를 하나 만들어 줍니다. (메소드 이름은 어떤걸로 해도 상관없어요) extension UITextField { func leftPadding() { // 1 let paddingView = UIView(frame: CGRect(x: 0, y: 0, width: 20,..

iOS 2022. 2. 11. 22:21
[Swift] 열거형 (Enumerations)

정의 열거형은 관련된 값들의 그룹에 대한 공통 타입을 정의하고 안전한 타입(type-safe)이 된 해당 값들로 코드 내에서 사용할 수 있게 해줍니다. 각 열거 case 별로 값이 제공 된경우, 값의 타입은 String, Character, Int, Float가 될 수 있습니다. 열거형은 자체로 1급 클래스 유형 이어서 초기화를 정의 할 수도 있고, 초기기능을 확장할 수도 있고, 표준 기능을 제공하기 위해 프로토콜을 준수 할 수도 있습니다. 어렵다... 열거형 문법 열거형은 enum 키워드를 사용하여 정의 합니다. enum Enumeration { // enumeration 정의는 여기에 ! } 다음은 (동, 서, 남, 북) 네 가지 방향을 갖는 CompassPoint 열거형 선언의 예시 입니다. enu..

iOS 2022. 2. 9. 20:48
[iOS] CocoaPods 설치 및 실행

Alamofire Snapkit Starscream RxSwift 등등 많이 보셨죠? 어떤 기능들을 구현하는데 코드를 좀더 간결하고 시간을 단축시켜주게 하는 Library들 입니다. 이 모든 Library들을 관리하게 해주는 툴중 대표적으로 CocoaPods 이 있는데요. 오늘은 CocoaPods 설치 방법에 대해 알아볼게요. CocoaPods Swift 및 Objective-C 에서 개발을 할 때, 외부 라이브러리들을 관리하기 쉽도록 도와주는 의존성 관리 도구중 하나 입니다. CocoaPods 설치 터미널에 아래와 같이 입력해 줍니다. sudo gem install cocoapods 설치 끝. 아주 간단하죠? ⚠️ 참고 자물쇠 모양이 뜨면 맥북에 지정해놓은 비밀번호를 입력해주시고 비밀번호가 없다면 그냥..

iOS 2022. 2. 6. 15:36
[Swift] 클로저 (Closure) (2) - Escaping Closure, Autoclosure

지난 클로저에는 값 캡처, 클로저 표현식 에 대해 알아봤는데요! 오늘은 클로저의 심화 과정인 Escaping 클로저 Auto 클로저 에 대해 정리해 보려고합니다! 탈출 클로저 (Escaping Closures) 간단하게 표현하면, 함수가 끝나고 실행되는 클로저 이며, 비동기 작업을 하기 위해 사용합니다. 클로저를 함수의 파라미터로 넣을 수 있는데, 이때 파라미터 타입 앞에 @escaping 을 적어줌으로써 클로저가 escaping 할 수 있게 해줍니다. var completionHandlers: [() -> Void] = [] func withEscaping(completionHandler: @escaping () -> Void) { completionHandlers.append(completionHan..

iOS 2022. 2. 2. 21:50
[Swift] 클로저 (Closure) (1)

대망의 클로져 입니다. 제일 많이 쓰이지만 아직도 어렵고 헷갈리는 그것. 공부해 봅시다. 클로저 (Closure) 클로저는 코드블럭으로 C와 Objective-C의 블럭(blocks), 다른 언어의 람다(lambdas)와 비슷 합니다. 어떤 상수나 변수의 참조를 캡쳐(capture)해 저장할 수 있습니다. Swift는 캡쳐와 관련된 모든 메모리를 다룹니다. 전역 함수(Global Functions)와 중첩 함수(Nested Functions)는 클로저의 특별한 경우 입니다. 클로저는 세 가지 형태중 하나를 가집니다. 이름을 갖고 있고, 어떤 값들도 캡처하지 않는 클로저 (전역 함수) 이름을 갖고 있고 관련한 함수의 값 들을 캡처 할 수 있는 클로저 (중첩 함수) 경량화된 문법으로 쓰여지고 관련된 문맥으로..

iOS 2022. 1. 30. 13:55
[iOS Error] iPhone is busy: Preparing debugger support for iPhone

가끔 실기기에 테스트 해보려고 하면 이런 팝업이 뜨는데요. 네 .. 아이폰 이 친구가 바쁘답니다. 비싼자식 그렇다고 언제까지 기다려 줄수는 없으니 아래 해결방법 3가지를 가져왔습니다. StackOverFlow 에 있던 내용을 참고했습니다. 해결 방법 solution 1: 침착하게 10 ~ 15 분 기다린다. 차를 마시거나 주변을 돌아보세요 ;- ) 못기다려 이자식아 solution 2: 기기와 재연결을 해보고, iPhone과 Xcode를 재실행 해보거나, clean build ( cmd + shift + k ) 를 해보세요 저는 clean build 하니깐 됐어요 solution 3: 아래 가이드를 참고해주세요. Devices and Simulators 로 이동 (단축키: Shift + cmd + 2 )..

iOS/Error 2022. 1. 28. 20:21
ModerRIBs_tutorial 2 - 2

지난 튜토리얼 2-1에 이어서 가봅시다 LoggedIn 이 로드 될 때 OffGame attach 시키기 LoggedIn 은 viewless라고 했습니다. 하위 RIB 들을 조정만 할 수 있는데요. LoggedIn의 하위 RIB인 OffGame 을 생성해 볼게요. OffGame 은 "Start Game" 버튼을 보여주며, 버튼을 탭하면 작동하기 위한 역할을 할겁니다. OffGame은 RIB 생성시 view를 추가 해주세요! UI를 구현하기 위해 OffGameViewController 에 아래와 같이 작성 해주세요. (친절하게 uber에서 UI 코드를 공유해줬습니다. 여러분의 시간은 소중하니까 아래꺼 복붙!) // OffGameViewController import ModernRIBs import UIKi..

iOS 2022. 1. 26. 21:14
이전 1 ··· 8 9 10 11 12 13 14 ··· 16 다음
이전 다음
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
  • Peppo's Github
TAG
  • swift reduce
  • removeLast()
  • Swift final
  • Swift 프로퍼티
  • Swift inout
  • Swift joined()
  • Swift 내림차순
  • Swift init
  • swift programmers
  • Swift ModernRIBs
  • Combine: Asynchronous Programming with Swift
  • Swift 프로그래머스
  • CS 네트워크
  • RTCCameraVideoCapturer
  • ios
  • iOS error
  • 2023년 회고
  • RIBs tutorial
  • swift (programmers)
  • Swift 알고리즘
  • swift protocol
  • Class
  • 원티드 프리온보딩
  • Swift
  • swift property
  • Swift RIBs
  • swift 고차함수
  • Swift joined
  • Swift Leetcode
  • Swift Error Handling
more
«   2025/08   »
일 월 화 수 목 금 토
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 29 30
31
글 보관함

Blog is powered by Tistory / Designed by Tistory

티스토리툴바