Swift(스위프트): CGContext에서 GState의 의미, saveGState & restoreGState 사용법 (스토리보드, Core Graphics)

예를 들어 데이터가 있고, 데이터를 바탕으로 다음과 같은 그래프를 그리고 싶다고 가정합니다. // Weekly sample data var graphPoints = [4, 2, 6, 4, 5, 8, 3] 이 그래프 디자인 특징으로는 그래프 선 아래에 새로운 그라데이션이 있고, 각 그래프의 일정 범위마다 수치가 큰 크기의 점(원)으로 그려져있다는 점입니다.   이 디자인에 맞춰 더보기…

아마존 웹 서비스(AWS) 프리티어 기간이 끝나면 한달 요금으로 얼마가 부과될까?

제가 사용하던 AWS 프리티어 계정이 1년이 넘어서 올해 8월 1일부터 유료로 전환이 되었습니다. 인터넷에 AWS 프리티어 기간 만료 후의 금액 AWS 금액 에 대한 정보가 별로 없어서 8월 1일부터 8월 29일 저녁 6시까지의 청구 요금 파일을 올려봅니다. AWS 프리티어 기간이 끝난 뒤 서비스 추가하거나 변경한 것은 없습니다. EC2 인스턴스 및 더보기…

자바스크립트: 콘솔 로그(console.log)의 내용을 브라우저 HTML 내에 표시하기

자바스크립트는 아무 곳에서나 시스템의 변수, 함수, 객체들을 맘대로 덮어쓸 수 있다는 문제점이 있지만, 그 문제점을 역으로 이용하여 콘솔 로그를 브라우저 내에 표시하는 것이 가능합니다. 먼저 body 태그 내에 콘솔 로그를 표시할 영역을 생성합니다. <pre id=”console”></pre>   다음 자바스크립트에서 위의 pre 태그를 불러옵니다. const consoleDiv = document.getElementById(“console”) 아래의 consoleToHtml 함수를 작성합니다. const 더보기…

Swift(스위프트): WKWebView에서 Swift 네이티브 앱과 웹 페이지의 자바스크립트간 통신 (스토리보드) + console.log 표시

이전 글에서 이어집니다. Swift(스위프트): 오프라인 웹 페이지 표시하기 (스토리보드) Swift(스위프트): 오프라인 웹 페이지에서 자바스크립트 실행 및 alert, confirm, prompt 띄우기 (스토리보드)   자바스크립트에서 네이티브 앱(Swift)로 데이터 보내기 웹 페이지의 자바스크립트 부분에 다음을 추가합니다. const is_iOS = navigator.userAgent.match(/iPhone|iPad|iPod/i) == null ? false : true function sendToNativeApp(event) { if(is_iOS) { // receiveFromJS 더보기…

Swift(스위프트): Page Controller View (페이지 넘기기) 기초 (스토리보드)

출처 블로그 – 찾아본 결과 여기에 나온 설명이 제일 이해하기 편했습니다. iOS로 된 전자책이나 앨범 등을 만들 때 이미지를 좌우로 스와이프해서 넘기는 형태로 만들 필요가 있습니다. 이럴 때 사용하는 뷰 컨트롤러가 페이지 뷰 컨트롤러 (UIPageViewController) 입니다.   스토리보드 먼저 스토리보드에서 페이지 뷰 컨트롤러를 생성합니다.   페이지 뷰 컨트롤러는 다른 뷰 더보기…

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)   주요 공통점은 다음과 같습니다. 값을 저장하기 위한 더보기…