study record

Get started with Writing Tools - WWDC24 본문

iOS/WWDC

Get started with Writing Tools - WWDC24

asong 2024. 6. 30. 23:55

떱떱디씨 영상 바로 보러가기 -> https://developer.apple.com/videos/play/wwdc2024/10168/

 

 

Get started with Writing Tools - WWDC24 - Videos - Apple Developer

Learn how Writing Tools help users proofread, rewrite, and transform text in your app. Get the details on how Writing Tools interact with...

developer.apple.com

 

해당 동영상을 요약한 글입니다.

 

 

 

 

 

Writing Tools 소개

  • Writing Tools는 iOS, iPadOS, macOS의 텍스트 뷰에서 사용할 수 있는 기능 모음이다.
  • 사용자가 텍스트를 교정, 재작성 또는 변환하는 데 도움을 줍니다.
  • 키보드 상단이나 컨텍스트 메뉴에 나타나는 인라인 제안 기능을 제공합니다.

 

 

주요 기능

  • 교정: 철자 및 문법 오류를 감지한다.
  • 재작성: 텍스트를 더 친근하게, 전문적으로 또는 간결하게 만든다.
  • 요약: 텍스트를 요약하고, 주요 포인트, 목록 또는 표로 변환한다.
  • 편집 가능한 텍스트와 편집 불가능한 텍스트 모두에서 작동한다.

 

작동 방식

  • UITextView, NSTextView, 또는 WKWebView에서 지원되는 환경에서 자동으로 나타난다.
  • 전체 기능을 사용하려면 TextKit 2가 필요하며, TextKit 1을 사용할 경우 제한된 기능만 사용할 수 있다.
  • 스타일 및 링크와 같은 텍스트 속성을 유지하기 위해 속성 문자열을 사용합니다.

 

 

앱 통합

  • Writing Tools 세션 동안 앱 상태를 관리하기 위한 새로운 델리게이트 메서드:
    • textViewWritingToolsWillBegin: 앱 상태 준비.
    • textViewWritingToolsDidEnd: 앱 상태 복원.
  • 세션이 활성 상태인지 확인하기 위한 새로운 isWritingToolsActive 속성.
  • 긴 텍스트 작업 중 처리 중임을 나타내는 애니메이션을 적용한다.

 

 

맞춤 설정 및 제어

  • 새로운 API로 Writing Tools 동작 제어:
    • writingToolsBehavior를 사용하여 경험 유형 설정.
    • writingToolsAllowedInputOptions를 사용하여 텍스트 뷰 기능 명시.
  • WKWebView 설정을 통한 전체 기능 활성화.

 

특정 텍스트 범위 처리

  • 특정 텍스트 범위(예: 코드 블록, 인용된 텍스트)를 보호하기 위한 델리게이트 메서드.
  • WKWebView에서 특정 HTML 태그를 자동으로 무시한다.

 

 

커스텀 텍스트 뷰

  • 최소한의 설정으로 맞춤 텍스트 뷰에 대한 기본 경험 제공.
  • iOS 및 iPadOS에서는 UITextInteraction을 채택하여 무료로 통합.
  • macOS에서는 NSServicesMenuRequestor를 채택하고 validRequestor(forSendType:returnType:)를 재정의하여 컨텍스트 메뉴 통합.

 

 

 

결론

  • 앱에서 Writing Tools를 사용해보고,
  • 상태 제어를 위한 새로운 메서드를 채택하고,
  • 필요에 따라 동작을 맞춤 설정하며,
  • 글쓰기를 즐기세요!

 

 

 

 

---------------------

writing tools를 지원하지 않는다면 챙기면 좋을 것

 

1. none으로 세팅하여 writing tools 사용 불가능하게 세팅하기

textView.writingToolsBehavior = .none

 

2. input options 중 제한하고 싶다면

textView.writingToolsAllowedInputOptions = [.plainText]

 

 

 

 

 

'iOS > WWDC' 카테고리의 다른 글

[WWDC2022] What's new in UIKit  (0) 2022.06.21