Swift(스위프트): 오프라인 웹 페이지에서 자바스크립트 실행 및 alert, confirm, prompt 띄우기 (스토리보드)

이전 글에서 이어집니다. Swift(스위프트): 오프라인 웹 페이지 표시하기 (스토리보드)   웹킷뷰(WKWebView) 에서 자바스크립트를 실행하려면 자바스크립트 모드가 활성화되어야 합니다. 다음 코드를 뷰 컨트롤러에 추가합니다. iOS 14 버전과 이전 방식에 차이가 있습니다. 먼저 딜리게이트를 구현하는 뷰 컨트롤러의 extension을 추가합니다. extension ViewController: WKUIDelegate, WKNavigationDelegate { }   다음 웹킷뷰를 초기화하는 함수를 작성합니다. 하이라이트 더보기…

Swift(스위프트): 오프라인 웹 페이지 표시하기 (스토리보드)

뷰 위에 오프라인으로 저장된 HTML 페이지를 표시하는 예제입니다. 1) WebKit View를 뷰 위에 추가합니다.   2) 뷰 컨트롤러 소스 파일에 웹킷 뷰를 연결한 @IBOutlet 변수를 추가합니다.   3) 다음 프로젝트 폴더에서 마우스 오른쪽 버튼을 누른 뒤 Show in Finder 메뉴를 선택해 파인더 탐색기를 엽니다.   4) 웹페이지 파일을 담을 새로운 더보기…

iOS 앱 포트폴리오: Tuner XR 애플 앱스토어 출시 📱- 음악가들을 위한 튜너 앱

Tuner XR 사용 도구 Swift, Xcode   앱스토어 링크 https://apps.apple.com/kr/app/tuner-xr/id1581803256 (모든 국가 출시)   깃허브 링크 https://github.com/ayaysir/iOS-Tuner/   제작 시기 버전 1.0 – 2021.7.30 ~ 2021.8.20   특징 및 사용 기술 애플 앱스토어의 검수에 통과하였습니다. Core Data + CloudKit으로 개인 아이클라우드 계정을 데이터 관리 및 기기간 연동 IOS 13 버전 더보기…

스위프트 (Swift): 메일 보내기 기능 (스토리보드)

Swift(스위프트) iOS 프로그래밍에서 버튼에 메일을 보내는 기능을 할당하는 예제입니다.   추가하고자 하는 뷰 컨트롤러에 다음을 import합니다 (윗부분에 작성). import MessageUI   아래 코드를 해당 뷰 컨트롤러의 extension으로 추가합니다. extension TargetViewController: MFMailComposeViewControllerDelegate { @IBAction func launchEmail(sender: UIButton) { // 1 guard MFMailComposeViewController.canSendMail() else { // 사용자의 메일 계정이 설정되어 있지 않아 더보기…

Swift(스위프트) 기초: struct (구조체; structures)

기본적으로 클래스와 유사하게 객체를 만들어 캡슐화하는 기능을 가지고 있습니다. 문법 및 사용법도 매우 유사합니다. Swift 기초 (4): 클래스, 옵셔널과 nil struct Person { var name: String var job: String var age: Int let person1 = Person(name: “aa”, job: “neet”, age: 12) print(person1)   주요 공통점은 다음과 같습니다. 값을 저장하기 위한 더보기…

Swift(스위프트): 텍스트 필드(UITextField)에 숫자만 입력되게 하기, 자리수 제한하기 (스토리보드)

텍스트 필드에서 숫자만 입력되게 하고, 특정 자리수 이상이 되면 키보드를 사라지게 하는 예제입니다.   1) 마우스 오른쪽 버튼을 누른채로, 또는 control 버튼을 누른채로 드래그하여 @IBOutlet 변수를 생성합니다. @IBOutlet weak var textFieldOutlet: UITextField!   2) 뷰 컨트롤러의 viewDidLoad() 안에 컨트롤러와 딜리게이트를 연결합니다. textA4FreqOutlet.delegate = self 또는 위의 과정 대신 스토리보드에서 텍스트 더보기…

Swift(스위프트): UITextField의 숫자 패드(Number Pad)에 완료 버튼 달기 (스토리보드)

텍스트 필드 (UITextField)를 스토리보드에서 숫자 패드(Number Pad)만 나오게 설정할 수 있습니다.   이 패드의 문제점은 아래 그림 완료(엔터) 버튼이 없다는 점입니다. 완료 버튼이 없으므로 추가 설정이 없다면 어떤 방법으로도 키보드를 사라지게 할 수 없습니다. 해결 방안으로 일정 자리수가 입력되면 숫자 패드를 사라지게 하기 숫자 패드 위에 [완료] 버튼 달기   더보기…

Swift(스위프트): 코어 데이터(Core Data) CRUD 기초 (UIKit에서)

Core Data란? Core Data를 통해 iOS, macOS 등의 애플리케이션 내에 오프라인으로 데이터를 저장할 수 있습니다. 다음은 Core Data의 소개글입니다. Core Data는 macOS 및 iOS 운영 체제에서 Apple이 제공하는 객체 그래프 및 지속성(persistence) 프레임워크입니다. 관계형 엔터티 속성 모델로 구성된 데이터를 XML, 바이너리 또는 SQLite 저장소로 직렬화할 수 있습니다. 엔터티 및 해당 더보기…

iOS 프로그래밍: 스크롤 뷰(Scroll View) 사용방법 (스토리보드)

1) 뷰 컨트롤러에 Scroll View 를 추가합니다.   2) 스크롤 뷰를 원하는 위치에 놓은 뒤 Add New Constraint로 상하좌우 제약(constraint)를 지정합니다. (빨간색 선 부분)   3) 제약을 지정하면 아래와 같이 빨간색 선이 나타납니다.   4) 스크롤 뷰 안에 뷰(View)를 추가합니다. 뷰가 스크롤 뷰 안에 위치해야 합니다.   5) View의 상하좌우 더보기…

iOS 앱 포트폴리오: 디퓨저 스틱 (Diffuser Stick) 애플 앱스토어 출시 📱- 디퓨저 스틱 교체주기 관리 앱

제가 만든 Diffuser Stick 이라는 앱이 애플 앱스토어에 출시되었습니다. DiffuserStick (디퓨저 스틱) 사용 도구 Swift, Xcode   앱스토어 링크 https://apps.apple.com/kr/app/diffuserstick/id1578285458 (모든 국가 출시)   깃허브 링크 https://github.com/ayaysir/iOS-DiffuserStick/   제작 시기 버전 1.0 – 2021.7.13 ~ 2021.7.27   특징 및 사용 기술 애플 앱스토어의 검수에 통과하였습니다. Core Data로 오프라인 데이터 관리 더보기…