본문 바로가기

반응형

iOS/UIKit

(6)
WKNavigationType 이해하기 iOS에서 WKWebView를 사용하여 웹 콘텐츠를 표시할 때, 사용자의 다양한 탐색 동작을 감지하고 이에 맞춰 적절한 처리를 하는 것은 매우 중요합니다. 이를 위해 Apple은 WKNavigationType이라는 열거형을 제공하여 WKWebView 내에서 발생하는 탐색의 유형을 식별할 수 있게 해줍니다. 이 글에서는 WKNavigationType의 각 항목과 그에 해당하는 웹에서의 동작을 자세히 살펴보겠습니다. WKNavigationType이란? WKNavigationType은 WKWebView에서 발생하는 탐색 요청의 유형을 나타내는 열거형입니다. 이 열거형은 WKNavigationDelegate의 webView:decidePolicyForNavigationAction:decisionHandler: ..
WKNavigationActionPolicy 이해하기 iOS 개발에서 WKWebView를 사용할 때, 사용자의 탐색 경험을 부드럽고 안전하게 만들기 위해 탐색 액션을 효과적으로 처리하는 것이 중요합니다. 애플은 WKNavigationActionPolicy 열거형을 제공하여 사용자가 요청한 탐색 액션에 대해 앱이 어떻게 반응할지 결정할 수 있게 해줍니다. 이번 글에서는 WKNavigationActionPolicy의 옵션들, 그 차이점, 그리고 각 옵션을 언제 사용해야 하는지 알아보겠습니다. WKNavigationActionPolicy란? WKNavigationActionPolicy는 WKWebView에서 발생하는 탐색 액션에 대한 정책을 지정하는 열거형입니다. 이는 WKNavigationDelegate의 webView:decidePolicyForNavigat..
WKWebView에서 window.open() 핸들링하기: 완벽 가이드 iOS 애플리케이션에서 WKWebView를 사용할 때, 자바스크립트의 window.open()을 처리하는 것은 흔하지만 다소 까다로운 작업입니다. window.open()은 일반적으로 새로운 브라우저 창이나 탭을 열려고 하지만, WKWebView에서는 이 동작이 자동으로 이루어지지 않기 때문에 개발자가 직접 핸들링해야 합니다. 이 글에서는 WKWebView에서 window.open()을 효과적으로 처리하는 방법과 navigationAction.targetFrame 및 navigationAction.targetFrame.mainFrame의 동작에 대해 자세히 알아보겠습니다. 1. 문제 이해하기 웹 페이지에서 window.open()을 사용하면 새로운 브라우저 컨텍스트(탭이나 창)를 만들려고 시도합니다. 그..
UIDocumentInteractionController UIDocumentInteractionController 는 앱에서 직접 파일 형식을 처리 할 수 없는 파일을 미리보기와 파일을 다른앱에 전송해주는 컨트롤러입니다. 이번 프로젝트에서는 웹의 pdf파일을 받아서 미리 보여주고 다음앱으로 연동되는 예제를 살펴 보겠습니다. 아래 그림과 같이 pdf 파일을 미리 보여주기 하고, 사용가능항 앱 리스트를 보여주도록 하겠습니다. 이 프로젝트에서는 URLSession, FileManager를 통해서 파일을 받고 저장하는 과정이 있으나 이부분은 다음에 더 자세하게 알아 보도록 하겠습니다. 우선 프로젝트를 생성을 합니다. 저는 "UIDocumentInteractionExample" 이라는 프로젝트를 선택 했습니다. Main.storyboard의 ViewController ..
WKWebview Link Preview (Responding to Force Touch Actions, Peek and Pop) 이번주는 그냥 뭐할까 생각하다가 문득 생겨난 기능 해보려고 합니다. 바로 아래 사진의 기능입니다. 포스터치로 링크 내용을 팝업 형식으로 볼 수 있는 기능입니다. 평소에 커뮤니티 사이트를 돌아다니면서 사용하고 있는데요 실제로 어떻게 동작을 하는지 보겠습니다. 위 기능은 WKWebview에서 제공하는 기능이며 iOS 10.0 이상 버전에서 사용이 가능합니다. 자료를 찾는 과정에서 정확한 명칭을 몰라서 고생을 했는데 그냥 "Link Preview" 라고 하도록 하겠습니다. 우선 프로젝트를 생성을 합니다. 저는 "WKWebviewLinkPreview"로 생성을 했습니다. "WKWebview"를 사용하기 위해서는 "WebKit" Library를 import 합니다. import WebKit 웹뷰를 위한 "WKWe..
iOS 앱 이름 다국어 적용하기 나는 모르고 개발을 했었다. 앱 이름이 다국어적용이 안되어 있었다. 다른거는 다 적용하고 있었는데... 그래서 구글링해서 찾은 방법 적어 봅니다. 우선 가지고 있는 프로젝트에서 프로젝트 파일을 아래와 같이 선택을 합니다. 프로젝트 "Info" 화면에서 하단 부분의 "Localizations" 부분을 보시면 영어 밖에 없습니다. "+" 클릭해서 한글을 추가 합니다. 그러면 "Localization" 할 파일들이 나타나고, "Finish"를 클릭하면 "Main.storyboard", "LaunchScreen.storyboard" 두개 파일이 다국어화 됩니다. 아래 그림과 같이 "Main.storyboard", "LaunchScreen.storyboard" 파일에 대한 다국어 파일들이 생깁니다. 앱의 아이콘에..

반응형