swift 15

iOS ScrollView 설정

안녕하세요. 반다이크 입니다. 오늘은 할때마다 헷갈리는 스크롤뷰 설정에 대해 알아보겠습니다. Storyboard 이용시 1. 먼저 스크롤뷰를 ViewController에 꽉차게 설정해줍니다. 그럼 이렇게 빨간색이 뜨는데 그 이유는 스크롤뷰가 자신의 정확한 크기를 모르기 때문입니다. 2. 스크롤뷰의 사이즈를 정하기위해 서브뷰를 추가해줍니다. 3. 서브뷰를 ScrollView의 Content Layout Guide에 컨트롤 + 드래그 한 후 그림처럼 4가지를 설정해줍니다. - 서브뷰의 콘텐츠 크기가 스크롤뷰 컨텐츠의 기준이 됨 혹시 사진처럼 + 숫자가 들어가있다면!! Constant를 0으로 바꿔줍니다. 이거때매 삽질좀 했습니다ㅠㅠ 4. 서브뷰를 Frame Layout Guide에 컨트롤 + 드래그 후 - ..

Swift 2022.06.05

iOS 분리된 타겟 내부 XML 파일 파싱

1. XML 문서 셋팅 1-1 XML 문서 추가 1-1 Dev, Store 폴더에 XML 추가 1-2 Dev xml 은 app_key의 value 변경 2. XMLParser 사용 2-1 ViewController에서 XMLParser 객체 생성 및 파싱 if let path = Bundle.main.url(forResource: "Settings", withExtension: "xml") { if let parser = XMLParser(contentsOf: path) { parser.delegate = self parser.parse() } } 2-2 XMLParserDelegate 구현 // 태그의 시작 func parser(_ parser: XMLParser, didStartElement elem..

Swift 2022.05.02

iOS GoogleService - Info 타겟 분리(FCM, Crashlytics)

분리된 타겟에 FCM 및 Crashlytics 연동하는 법을 알아보겠습니다. ** 이미 기존 타겟이 연결되어 있음을 가정 1. FCM 1-1. Firebase Console에서 새 앱 등록 클릭 ##자세한 부분은 해당 글 참고(2-3) https://vandijk.tistory.com/4 FCM, APNS 연동 방법 1. APNS 1-1 Apple Developer 접속 2-1 클릭 2-2 Key 추가하기 클릭(아이디당 2개 생성 가능) 2-3 체크 후 Continue 2-4 등록 완료 2-5 등록 완료 (p8 파일 다운로드 필수!) (한번 다운로드 이후 재시도 불.. vandijk.tistory.com 1-2 GoogleService-Info 다운로드 ##이름 변경 후 분리된 폴더 위치에 넣기 1-3 ..

Swift 2022.05.02

iOS 타겟 분리

iOS 타겟 분리하는 방법에 대해 알아보겠습니다. 1. 타겟 분리 1-1 기존 타겟 오른쪽 클릭 후 Duplicate 클릭 2-2 자동으로 info plist 복사본 생성 2-3 복사된 info plist 명칭 변경 및 폴더 분리 2-4 Target의 Build Settings에서도 plist 파일의 이름 변경 ** 폴더로 이동을 했을경우 경로 맞춰주기 - Finder에서 경로 확인 필수 ## PROJECT_DIR - 프로젝트 를 포함하는 디렉토리 ( .xcodeproj) 2-5 Bundle id 변경 2-6 Scheme 변경 2-7 target 분리 확인 ** Swift compiler - Custom Flags - Other swift Flags - 전처리문에서 구분하고 싶은 이름으로 변경 ** -D..

Swift 2022.05.02

iOS Navigation RootView 설정

1. AppDelegate 방식 1-1 Infoplist에서 Manifest 삭제 1-2 SceneDelegate 클래스 삭제 1-3 AppDelegate에서 두 함수 삭제 1-4 AppDelegate에서 var window: UIWindow? 추가 1-5 didFinishLaunchingWithOptions 함수에 코드 추가 ## ObjC 문법 UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"Main" bundle:nil]; MainViewController *MainViewController = [storyboard instantiateViewControllerWithIdentifier:@"MainViewController"]; UINav..

Swift 2022.04.08

iOS 서명 기능 만들기_1

ImageView와 UIGraphics를 이용해 간단한 싸인 패드 기능을 만들어 보겠습니다. 흠..근데 이방식은 뷰가 커지면 좌표가 안맞네요 ㅠㅠ 더 큰 사이즈로 싸인뷰를 만드시는 분들은 iOS 서명 기능 2를 참고해주세요~! https://vandijk.tistory.com/13 1. 스토리 보드에 이미지뷰 2개와 와 버튼 추가 ## imageVIew에 하얀 이미지 삽입 2. 클래스에 객체 연결 3. UIPanGestureRecognizer를 통해 객체에 제스처 변환 및 속도 이벤트 전달 4. 전달된 제스처 상태에 따른 현재 위치와 마지막 위치 초기화 5. UIGraphicsBeginImageContextWithOptions를 통한 이미지 컨텍스트 시작 UIGraphicsGetImageFromCurre..

Swift 2022.04.05

iOS 애플 로그인

애플 로그인에 대해서 알아보겠습니다. 1. Capability 추가하기 먼저 XCode Project의 Signing & Capabilities를 열어 왼쪽 상단의 + Capability를 선택합니다. 선택. 2.Apple Developer 접속 2-1 등록된 앱 설정 필요 https://developer.apple.com/account/resources/identifiers/list 2-2 조금 전 설정했던 Sign In With Apple 체크 3.코드 구현 3-1 실행할 클래스에서 import 3-2(1) presentationAnchor -> 실행될 view(가장 탑 뷰 얻어오기) getTopViewController 3-2(2) 실제 실행 함수 [.fullName, email] 사용자 정보 나열..

Swift 2022.02.27

iOS 구글 로그인

1.Google Developers 접속 https://developers.google.com/identity/sign-in/ios/start-integrating 2.라이브러리 설치 2-1 podfile 등록 2-2 pod install 3.구글 클라이언트 ID 만들기 3-1 iOS 선택 및 번들아이디 입력 3-2 클라이언트 아이디 발급완료 4.URL Schemes 입력(반대로 입력) ex) com.googleusercontent.apps.12345566-dbo8ncunmaptvoj8h19ol86qv7ac23a 5. Info.plist 6. 코드 5-1(초기 셋팅부분) #AppDelegate 사용시 import GoogleSignIn #SceneDelegate 사용시 import GoogleSignIn..

Swift 2022.02.27

iOS 페이스북 로그인

1.FaceBook Developers 접속 developers.facebook.com/docs/facebook-login/ios 2.라이브러리 설치 2-1 프로젝트 폴더 안에 podfile 실행 후 pod 'FBSDKLoginKit' 저장 2-2 해당 프로젝트 경로 이동후 pod install 3.Facebook 개발자 사이트에서 앱 등록하기 https://developers.facebook.com/apps/ 3-1 설정 등록(해당 항목 없을시 아무거나) 3-3 번들 아이디 입력 #번들 ID 확인 3-4 페이스북 로그인 4.info.plist 설정 CFBundleTypeRole Editor CFBundleURLSchemes fb3316615658620123 FacebookAppID fb331661565..

Swift 2022.02.26