반응형
개발
반응형
78

Swift TableView 에서 특정 Cell 위치로 이동하는 방법!?

Swift를 이용하요 iOS앱을 구성할때 해당 화면에서 UITableView를 사용하고 있는 상태에서 특정 Cell 위치로 이동되는 기능을 구성하고 싶다면? 1. UITableVeiw 객체를 정의 @IBOutlet weak var tableView: UITableView! 2. UITableView의 특정 Cell로 이동 시키기 위한 로직 추가 - 만약 30번째 Cell 위치로 이동 시키고 싶다면 // cell의 위치 정보를 가지고 있는 IndexPath를 이용하여 특정 row를 지정해 줄 수 있다. let indexPath: IndexPath = IndexPath(row: 30, section: 0) // scrollToRow 함수를 이용하여 손쉽게 구현이 가능하다. // - .middle 부분의 경우..

개발 2021.07.08

iOS Swift를 이용하여 화면 회전에 대한 이벤트 받기

특정 화면에서 화면 회전에 대한 이벤트를 받으려면 어떻게 해야 할까? - 앱에서 화면 회전이 가능하나 iPhone의 세로보기 잠금을 해 놓은 상태라도 iPhone을 가로로 돌릴경우 이벤트는 발생된다. 1. NotificationCenter를 이용하여 Observer를 구성한다. // 아래 코드를 viewDidAppear 에 작성한다. // - 여기서 detectOrientation은 화면 회전 이벤트 발생시 호출할 함수 이다. NotificationCenter.default.addObserver(self, selector: #selector(self.detectOrientation), name: NSNotification.Name("UIDeviceOrientationDidChangeNotification..

개발 2021.06.14

iOS WKWebView 비디오 인라인 재생 시켜 보기!

WKWebView로 하이브리드 앱 개발 시 URL 안 비디오 재생 시 전체 화면이 아니라 인라인으로 재생시켜 보자! 그 전에 코드로 WKWebView 객체를 생성한 것과 StoryBoard 안에서 WKWebView 객체를 넣어서 구성한 것에는 방법 차이가 있다. 1. StoryBoard로 WKWebView 객체를 바로 생성한 경우에는 아래 이미지와 같이 Media 부분 Inline Playback 체크를 통해 적용이 가능하다. 2. WKWebView를 객체로 생성해서 적용할 경우에는 아래 webConfiguration을 통해 적용이 가능하다. let webConfiguration = WKWebViewConfiguration() webConfiguration.allowsInlineMediaPlayback ..

개발 2021.04.20

iOS Swift Firebase Auth Twitter 로그인 팁

Firebase 인증을 이용하여 Twitter 로그인 이용시 OAuth를 이용하게 된다. 이때 accessToken과 secret 값이 필요한데 가이드 상에서는 주석으로 다음과 같이 적혀있다. provider.getCredentialWith(nil) { credential, error in if error != nil { // Handle error. } if credential != nil { Auth().signIn(with: credential) { authResult, error in if error != nil { // Handle error. } // User is signed in. // IdP data available in authResult.additionalUserInfo.profil..

개발 2021.04.07

iOS Swift UITextField 입력시 특수문자 제외방법

UITextField로 사용자 입력값을 받고자 할때 특수 문자를 제외한 영문, 숫자만 입력을 받고자 한다면 어떻게 처리를 해야 할까? 특수 문자 입력 시 화면에 표기 되지 않도록 구성해보자! 1. UITextField에 Editing Changed Event 함수를 구성한다. @IBAction func ActFieldChanged(_ sender: UITextField) { // removeSpecialChars를 이용하여 특수문자가 입력되는것을 방지 한다. sender.text = self.removeSpecialChars(text: sender.text ?? "") } 2. 특수 문자 제거 함수 구성 func removeSpecialChars(text: String) -> String { let ok..

개발 2021.04.07

iOS 13 이후 위치 권한을 항상 받도록 설정하는 방법은?

앱을 개발하다 보면 단말기 위치 권한을 '항상 허용'이 필요한 경우가 발생된다. iOS 13 이후 어떻게 권한 승인이 가능한지 알아보자! 1. 기존 권한 요청 팝업을 '항상 허용'으로 출력하려면 아래 코드를 요청해야 한다. import CoreLocation var locationM = CLLocationManager() locationM.requestAlwaysAuthorization() - 물론 아래와 같이 Info.plist에 권한 문구도 작성을 해 주어야 한다. NSLocationAlwaysAndWhenInUseUsageDescription 위치정보 권한이 필요합니다. (항상 or 앱을 사용하는 동안 위치정보를 수신합니다.) NSLocationAlwaysUsageDescription 위치정보 권한..

개발 2021.04.01

Swift 위치 권한 팝업 요청 및 단말기 현재 위치 가져오기

iOS 앱을 개발하다 위치 정보를 활용해야 할때 방법을 알아보자! 1. Info.plist의 권한 텍스트 작성하기! NSLocationAlwaysAndWhenInUseUsageDescription 위치정보 권한이 필요합니다. (항상 or 앱을 사용하는 동안 위치정보를 수신합니다.) NSLocationAlwaysUsageDescription 위치정보 권한이 필요합니다. (항상 위치정보를 수신합니다.) NSLocationWhenInUseUsageDescription 위치정보 권한이 필요합니다. (앱을 사용하는 동안에만 위치정보를 수신합니다.) 2. 위치 권한 팝업을 뜨우는 방법과 위치 정보 가져오기 - requestWhenInUseAuthorization : 앱을 사용하는 동안에만 위치 정보를 사용하겠다고 ..

개발 2021.04.01

Android Java로 Kakao Login V2 이용해 보기

Android Java로 구성한 프로젝트에 Kakao Login V2를 적용하려고 보니 Kotlin 연동만 제공을 하고 있었다. Java로 구성된 프로젝트에는 그럼 어떻게 적용을 하여야 하는가?? 적용 방법을 아래와 같이 정리한다. 1. Android Java Project에 Kotlin을 사용할 수 있도록 연동한다. - 프로젝트 단위 build.gradle 파일안에 아래 붉은 내용을 추가한다. buildscript { repositories { // kotlin mavenCentral() // ... 아래 생략 ... } dependencies { // kotlin classpath 'org.jetbrains.kotlin:kotlin-gradle-plugin:1.4.21' // ... 아래 생략 .....

개발 2021.03.18

iOS 14.5 부터 변경될 IDFA 수집에 관한 정책 정리

iOS 앱에서 오퍼월 광고 및 광고 효율 추척을 위해 사용하던 광고ID 값인 IDFA를 수집하기 위해서 앞으로는 사용자의 권한을 필수로 받아야 한다. iOS 14.5 이전 버전에서는 별도의 사용자 승인없이 IDFA를 수집할수 있었으나 iOS 14.5 이상 부터는 IDFA를 수집하기 위해서는 필수로 권한을 받아야 한다. 기존 IDFA를 가져오기 위해서는 AdSupport 프레임워크를 통해 아래 코드로 수집이 가능했었다. import AdSupport ASIdentifierManager.shared().advertisingIdentifier 하지만 위 코드로 IDFA를 수집하려면 AppTrackingTranparency 프레임워크를 통해 추가로 팝업을 요청해 주어야 한다. 그럼 IDFA 권한 승인을 위한 팝..

개발 2021.03.16

Swift TextField 엔터키 이벤트 수신하는 방법!

iOS App을 개발하다 보면 TextField의 글자 입력 후 엔터키 이벤트를 수신해야 할때가 있다. 이럴때는 UITextFieldDelegate를 사용하면 된다. 코드 파일 이름이 testViewController.swift 라 가정할때 class testViewController: UIViewController, UITextFieldDelegate { @IBOutlet weak var fieldId: UITextField! override func viewDidLoad() { super.viewDidLoad() // StoryBoard에서 fieldId 객체의 딜리게이트 연결을 하지 않았다면 self.fieldId.delegate = self } // UITextFieldDelegate Return..

개발 2021.02.16