목록Xcode (89)
투케이2K
[개발 환경 설정] 개발 툴 : XCODE 개발 언어 : SWIFT [소스 코드] // [string to data 형변환] let data = "hello".data(using: .utf8)! // [data to string 형변환] String(decoding: data, as: UTF8.self)
[개발 환경 설정] 개발 툴 : XCODE 개발 언어 : SWIFT [소스 코드] // MARK: - [hex string to byte array] func hexStringToData(string: String) -> Data { let stringArray = Array(string) var data: Data = Data() for i in stride(from: 0, to: string.count, by: 2) { let pair: String = String(stringArray[i]) + String(stringArray[i+1]) if let byteNum = UInt8(pair, radix: 16) { let byte = Data([byteNum]) data.append(byte)..
[개발 환경 설정] 개발 툴 : XCODE 개발 언어 : SWIFT [소스 코드] import Foundation import UIKit import SafariServices // MARK: - [클래스 설명] /* 1. Extension 관련 정의 파일 */ // MARK: - [extension 정의 실시 : 뷰 컨트롤러] extension UIViewController { // MARK: [팝업창 호출 처리 메소드] func showAlert(type:Int, tittle:String, content:String, okBtb:String, noBtn:String) { // [메인 큐에서 비동기 방식 실행 : UI 동작 실시] DispatchQueue.main.async { print("")..
[개발 환경 설정] 개발 툴 : XCODE 개발 언어 : SWIFT [소스 코드] // [테스트 메인 함수] func testMain() { print("") print("===============================") print("[ViewController >> testMain() :: 테스트 함수 수행 실시]") print("===============================") print("") // 딕셔너리 변수 선언 실시 var Dic : Dictionary = ["name":"twok" , "age":28] // 반복문을 돌면서 key, value 확인 실시 for key in Dic.keys { print("") print("======================..
[개발 환경 설정] 개발 툴 : XCODE 개발 언어 : SWIFT [소스 코드] // [테스트 메인 함수 정의 실시] func testMain() { print("") print("===============================") print("[testMain : Program Start]") print("===============================") print("") // 딕셔너리 데이터 생성 실시 let Dic : Dictionary = ["MSC":"1","SSID":"2"] let Dic2 : Dictionary = ["MSC":"1","SSID":"2"] let Dic3 : Dictionary = ["MSC":"2","SSID":"3"] print("") pri..
[개발 환경 설정] 개발 툴 : XCODE 개발 언어 : SWIFT [소스 코드] // [테스트 메인 함수 정의 실시] func testMain() { print("") print("===============================") print("[testMain : Program Start]") print("===============================") print("") // MARK: - [jsonArray - jsonObject 형식 데이터 생성] var _array: Array = [] // 배열 선언 for i in stride(from: 1, through: 3, by: 1) { // 데이터 삽입 실시 // 딕셔너리 사용해 jsonObject 생성 let _dic..
[개발 환경 설정] 개발 툴 : XCODE 개발 언어 : SWIFT [소스 코드 : ExtensionUtil] import Foundation extension String { // [정규식 수행 실시 : 사용 방법 : let changeData = strData.matchString(_string: strData)] func matchString (_string : String) -> String { // 문자열 변경 실시 let strArr = Array(_string) // 문자열 한글자씩 확인을 위해 배열에 담는다 let pattern = "^[ㄱ-ㅎㅏ-ㅣ가-힣a-zA-Z0-9]$" // 정규식 : 한글, 영어, 숫자만 허용 (공백, 특수문자 제거) //let pattern = "^[ㄱ-ㅎㅏ-..
[개발 환경 설정] 개발 툴 : XCODE 개발 언어 : SWIFT [소스 코드] // MARK: - [24 시간 형태 현재 날짜 확인] func getNowDateTime24() -> String { // [date 객체 사용해 현재 날짜 및 시간 24시간 형태 출력 실시] let nowDate = Date() // 현재의 Date 날짜 및 시간 let dateFormatter = DateFormatter() // Date 포맷 객체 선언 dateFormatter.locale = Locale(identifier: "ko") // 한국 지정 dateFormatter.dateFormat = "yyyy.MM.dd kk:mm:ss E요일" // Date 포맷 타입 지정 let date_string = ..
[개발 환경 설정] 개발 툴 : XCODE 개발 언어 : SWIFT [소스 코드] func checkBuildInfo() { // [초기 변수 선언 실시] var appName = "" var appVersion = "" var appBuildVersion = "" var appBundleIdentifier = "" if let infomation = Bundle.main.infoDictionary { if let Name = infomation["CFBundleDisplayName"] as? String { appName = Name } if let Version = infomation["CFBundleShortVersionString"] as? String { appVersion = Versi..
[개발 환경 설정] 개발 툴 : XCODE 개발 언어 : SWIFT [소스 코드] import Foundation import CryptoSwift class C_AesUtil { // MARK: [클래스 설명] /* 1. AES 암호화 란 비밀키를 사용해 인코딩 , 디코딩을 수행하는 암호화 기법입니다 2. AES 128 [key] : 16 byte 3. AES 192 [key] : 24 byte 4. AES 256 [key] : 32 byte 5. 필수 사항 : CryptoSwift 라이브러리 설치 6. CryptoSwift 라이브러리 git 주소 : https://github.com/krzyzanowskim/CryptoSwift 7. 패키지 import : import CryptoSwift *..
[개발 환경 설정] 개발 툴 : XCODE 개발 언어 : SWIFT [소스 코드] import Foundation class S_Preference { //MARK: [클래스 기본 설명] /* 1. UserDefaults 사용해 모바일 데이터 저장 클래스 2. UserDefaults : Key-Value 형태를 저장 3. UserDefaults : 앱이 종료되어도 값이 저장되지만, 앱이 삭제되면 저장된 데이터가 사라짐 4. UserDefaults : Int, Double, Float, String, Bool, Data 등 데이터 타입을 저장 실시 5. 참고 : 앱이 삭제되어도 데이터가 유지되길 원한다면 Core Data 혹은 KeyChain, NSKeyedArchiever등을 이용한 파일 형태로 ..
[개발 환경 설정] 개발 툴 : XCODE 개발 언어 : SWIFT [소스 코드] /* [요약 설명] 1. json : key , value 로 이루어진 데이터 전송 포맷 형식입니다 2. jsonObject : json key, value 형태로 이루어져있습니다 3. jsonArray : 배열 형식 형태로 이루어져있습니다 */ // [테스트 메인 함수 정의 실시] func testMain() { print("[Program Start]") print("") // ===== [json 데이터 생성 부분] ===== // 배열 데이터 생성 실시 let colorArray: Array = ["red", "yellow", 10, 20] // Dictionary 사용해 json 데이터 생성 실시 let j..
[개발 환경 설정] 개발 툴 : XCODE 개발 언어 : SWIFT [소스 코드] // [extension 정의 실시 : String] extension String { func base64Encoded() -> String? { // base64 인코딩 수행 실시 if let data = self.data(using: .utf8) { return data.base64EncodedString() } return "" } func base64Decoded() -> String? { // base64 디코딩 수행 실시 if let data = Data(base64Encoded: self, options: .ignoreUnknownCharacters) { return String(data: data, ..
[개발 환경 설정] 개발 툴 : XCODE 개발 언어 : SWIFT [소스 코드] /* [요약 설명] 1. Date() : 현재의 Date 날짜 및 시간을 확인할 수 있습니다 2. DateFormatter() : Date 포맷 객체 선언 3. [포맷 형식 설명] : - yyyy = ex 연) 2021 - MM = ex 월) 08 - dd = ex 일) 13 - HH = ex 시) 24 시간 형태 - hh = ex 시) 12 시간 형태 - mm = ex 분) 48 - ss = ex 초) 34 */ // [테스트 메인 함수 정의 실시] func testMain() { print("[Program Start]") print("") // [date 객체 사용해 현재 날짜 및 시간 24시간 형태 출력 실시..
[개발 환경 설정] 개발 툴 : XCODE 개발 언어 : SWIFT [소스 코드] import UIKit // [protocol 정의 실시 : 클래스 외부에 선언] protocol ReadOne { func read_One() } protocol ReadTwo { func read_Two() } class ReadClass : ReadOne , ReadTwo { // 클래스에서 프로토콜 채택 // 메소드 몸체 구현 실시 func read_One() { print("ReadClass >> read_One") } // 메소드 몸체 구현 실시 func read_Two() { print("ReadClass >> read_Two") } } // [extension 정의 실시 : 클래스 외부에 선언 : 기존..
[개발 환경 설정] 개발 툴 : XCODE 개발 언어 : SWIFT [소스 코드] /* [요약 설명] 1. enum : 상수값(고정 데이터)을 열거체로 정의해 간편하게 관리하고 호출 및 사용할 수 있습니다 2. enum 사용 시 프로그램의 가독성이 높아지고, 간편하게 데이터를 관리할 수 있습니다 */ // [enum 정의 실시] enum response : String { case success = "성공" // string 리턴값 정의 case fail = "실패" // string 리턴값 정의 case error = "에러" // string 리턴값 정의 } // [enum 정의 실시] enum mobile { case samsung(device:samsung) // 회사별 휴대폰 기종 파라미..
[개발 환경 설정] 개발 툴 : XCODE 개발 언어 : SWIFT [소스 코드] /* [요약 설명] 1. class 자식:부모 - 방식으로 클래스간 상속을 실시합니다 2. override 는 상속받은 메소드를 재정의할 때 사용합니다 3. super 는 부모를 상속받은 자식쪽에서 다시 부모를 호출할 때 사용합니다 (부모 지정) */ // [부모 class 클래스 생성 실시] class Parent { // 메소드 정의 실시 func one_excute(){ print("Parent >> one_excute()") } // 메소드 정의 실시 func two_excute(){ } // 메소드 정의 실시 func three_excute(){ print("Parent >> three_excute()") ..
[개발 환경 설정] 개발 툴 : XCODE 개발 언어 : SWIFT [소스 코드] /* [요약 설명] 1. class : 클래스를 지정합니다 : 클래스는 상속이 가능 2. struct : 구조체를 지정합니다 : 구조체는 상속이 불가능 3. init : 클래스 및 구조체 생성자 초기화를 지정합니다 */ // [class 클래스 생성 실시 : 상속이 가능] class User_Class { var name: String? var age: Int? // 클래스 생성자 초기화 실시 init(name: String, age: Int){ // [전역 변수 = 파라미터 값] self.name = name self.age = age } // 리턴 함수 정의 실시 func getName() -> String { ..
[개발 환경 설정] 개발 툴 : XCODE 개발 언어 : SWIFT [소스 코드] /* [요약 설명] 1. for , while 문을 사용해서 반복문을 수행할 수 있습니다 2. for 문 증감 값을 지정하기 위해서 stride 문을 사용합니다 3. while true 사용 시 무한 루프를 지정합니다 */ // [테스트 메인 함수 정의 실시] func testMain(){ print("[Program Start]") print("") // [for 문 stride [to] : to 에 표시된 단계를 포함하지 않습니다] // from 시작 / to 단계 / by 증감값 for i in stride(from: 0, to: 5, by: 1) { print("[for] [to] : ", i) // 0, 1..
[개발 환경 설정] 개발 툴 : XCODE 개발 언어 : SWIFT [소스 코드] /* [요약 설명] 1. if 문법 : if 조건 else if 조건 else 2. switch 문법 : switch 데이터 case 조건 default 3. swift 에서는 if , switch 문을 사용해서 조건문 분기처리를 실시할 수 있습니다 */ // [테스트 메인 함수 정의 실시] func testMain(){ print("[Program Start]") print("") // 초기 데이터 정의 실시 let int_data = 10 let str_data = "안녕" // if 문을 사용해서 조건문 처리 실시 if int_data == 0 { // 0 값일 경우 print("조건문 : [IF] 만족") p..