전체 글380 iOS 공통로그 & pch 파일 iOS 공통로그 & pch 파일 iOS 공통로그 & pch 파일 작성 예제 #ifndef MyPushTestPro_PrefixHeader_pch #define MyPushTestPro_PrefixHeader_pch // Include any system framework and library headers here that should be included in all compilation units. // You will also need to set the Prefix Header build setting of one or more of your targets to reference this file. //#ifdef DEBUG //#define NSLog( s, ... ) NSLog( @"[%@ %.. 2021. 2. 8. iOS UNNotificationServiceExtension 예제 Push Sound iOS UNNotificationServiceExtension 예제 Push Sound 이번 포스팅에서는 백그라운드 모드에서 푸시가 왔을때 소리를 출력 하거나, 푸시 메시지를 미리 가로채서 수정하는법, 또는 push에 image를 넣어서 보내기 기능등을 할 수 있는 방법에 대해서 알아본다. 먼저 일반적인 푸시 보내는 예제부터 알아보자. 일반적인 푸시 보내기 작성 순서는 아래와 같다. 1. 라이브러리 추가 Xcode builde phases 에서 두개의 라이브러리를 추가해준다. UserNotification framework, PushKit framework 2.라이브러리 import AppDelegate.h에서 1번에서 추가한 라이브러리를 import 해준다. 그리고 파이어 베이스 라이브러리도 impor.. 2021. 2. 5. iOS 화면보호기 예제 iOS 화면보호기 예제 1.화면을 손으로 터치하는지 감지하는 클래스 생성 DetectManager.h #import "ScreenSaverVC.h" #import NS_ASSUME_NONNULL_BEGIN //화면 터치 감지 체크 클래스(feat. 타이머) @interface DetectManager : NSObject //타이머 @property (strong,nonatomic) NSTimer *detectTimer; //싱글턴 패턴 +(DetectManager *)sharedObject; //화면 감지 체크를 위한 타이머 시작(재시작) -(void)resetDetectTimer; @end NS_ASSUME_NONNULL_END DetectManager.m 이 클래스의 객체를 생성할때, 딱 한번 싱글턴.. 2021. 2. 3. iOS UIActivityIndicatorView 예제 iOS UIActivityIndicatorView 예제 1.UIView를 상속한 로딩뷰 만들기 ActivityView.h 엑티비티인티게이터와 표시할 라벨을 변수로 설정해준다. #import NS_ASSUME_NONNULL_BEGIN @interface ActivityView : UIView //싱글턴 패턴 +(ActivityView *)sharedObject; @property (nonatomic, retain) UIActivityIndicatorView * activityView; @property (nonatomic, retain) UILabel *loadingLabel; @end NS_ASSUME_NONNULL_END ActivityView.m 변수로 설정한 인디케이터와 라벨을 초기화 해주고, 오토.. 2021. 2. 2. 상속 예제 상속 예제 지난 포스팅(객체지향 프로그래밍 예제)에서 객체지향 예제를 알아봤는데, 도형을 그릴때 중복되는 변수와 메소드가 너무 많았다. 이번에는 상속을 통해서 코드를 줄여 보자. 우리가 머리 색깔이나 코 등을 부모님으로 부터 상속을 받는 것처럼, oop 에서 상속은 그 클래스가 다른 클래스로부터 특성을 물려받는 다는 것을 의미한다. 그 다른 클래스를 부모 클래스나 수퍼클래스라고 부른다. 원과 사각형은 Shpae으로 부터 상속을 받았기 때문에 Shpae의 두 인스턴스 변수를 갖는다. 참고: 상속 받는 인스턴스 변수들의 값을 직접 변경하는 것은 좋은 코딩 습관이 아니다. 인스턴스 변수를 변경하기 위해서는 변경하는 메소드를 만들어 사용하도록 한다. 상속 예제 코드 #import //모양 - 삭제 됨 //typ.. 2021. 2. 1. 객체지향 프로그래밍 예제 객체지향 프로그래밍 예제 모든길은 인다이렉션으로 통한다. 인다이렉션은 어떤일을 내가 직접하는 것이 아니라 다른 사람에게 부탁한다는 의미이다. 어떤 코드를 작성했는데, 이 코드가 다른 코드를 호출하고, 다른 코드는 또 다른 코드를 호출해서 내가 직접 처리하지 않지만 여러 경로를 거쳐 결국에 결과를 가져오는 식이다. 1.파일이름을 통한 인다이렉션 단어의 길이를 출력하는 프로그램이다. //단어 개수 출력 1 void showWordsCount (){ const char *words[4] = {"car" , "my book" , "working" , "running"}; int wordCount = 4; for (int i = 0; i < wordCount; i++) { NSLog(@"%s 단어 개수는 %lu .. 2021. 2. 1. iOS WKWebView 예제 iOS WKWebView 예제 1.Interface 작성 웹뷰를 사용하기위한 프로토콜을 채택하고, WKWebView 프로퍼티와 변수를 만들어준다. 여기서 스토리보드로 웹킷뷰를 만들어서 연결 시켜주면안된다. 스토리보드로 만든 웹킷뷰는 읽기 전용이므로, 자바스크립트와 통신을 위한 속성을 지정해줄수 없다. 그래서 UIView 타입의 웹뷰 컨테이너를 만들어서 웹뷰를 컨테이너 안에 넣어주는 방식으로 구현해야 한다. ViewController.h #import #import #import "Reachability.h" // WkWebView에서 주소가 변경되거나 스크립트를 사용할 경우 사용할 Delegate함수를 사용하기 위해 // 아래의 Delegate들을 참조합니다 @interface ViewController.. 2021. 1. 30. NSURLSession 공통 모듈 예제 NSURLSession 공통 모듈 예제 NSURLSession을 델리게이트 패턴으로 만들어서 사용할 수 있도록 설계했다. SessionObj.h #import NS_ASSUME_NONNULL_BEGIN //세션 호출시 알려주기 위한 비공식 프로토콜 (델리게이트) @protocol MySessionDelegate -(void) getResultDataFromMySessionData; @end @interface SessionObj : NSObject //세션 호출시 알려주기 위한 델리게이트 프로퍼티 @property (nonatomic , weak) id mySessionDelegate; @property (strong, nonatomic) NSDictionary *resultData; @property .. 2021. 1. 29. iOS 공통 로그 예제 iOS 공통 로그 예제 ComLog.h #import @interface ComLog : NSObject //로그 객체 싱글턴 패턴으로 생성 +(ComLog *)sharedObject; //로그 출력 : 메소드, 라인넘버, 텍스트 -(void)showLog:(const char *) method line:(int) lineNum logs:(NSString *) logText; @end ComLog.m //로그 출력, 로그 출력 안함 상수 #define output TRUE //#define output FALSE #import "ComLog.h" @implementation ComLog +(ComLog *)sharedObject{ static ComLog *comlog = nil; static dispa.. 2021. 1. 28. 이전 1 ··· 19 20 21 22 23 24 25 ··· 43 다음