iOS9에서 iPad 키보드에 표시되는 Undo/Redo/Paste 단추 처리

3974 단어 XcodeiOS9iOS
  • Xcode6.4
  • 개요


    텍스트 편집기 같은 프로그램이 설치되어 있는데, iOS9에서 실행하면 키보드 위에 어떤 버튼이 있습니까?증가했습니다. 도대체 어떻게 하면 앱으로 이걸 눌러야 하는지 조사했기 때문에 적당히 남겨두세요.

    Paste

    canPerformAction 고정동작에 대한 질문이 있으니, 이에 대해 대답하면 된다.
        override func canPerformAction(action: Selector, withSender sender: AnyObject?) -> Bool {
            if action == "paste:" {
                return true
            }
            return false
        }
    
        override func paste(sender: AnyObject?) {
            println("paste called!!")
        }
    
    ※ 어디에paste: 문자로 정의되지 않았나...
    마찬가지로 cut:, copy:, toggleBoldface:, toggleItalics:, toggleUnderline: 등의 문의가 오기 때문에 잘라내기와 복사 등도 여기에 설치할 수 있다.
    (선택 범위가 있으면 잘라내기 등의 버튼이 나타나기 때문에)

    Undo/Redo


    그럼 canPerformAction과에는 Undo/Redo 문의가 없습니다...
    이것은
    override var undoManager: NSUndoManager? { return hogehoge }
    
    이렇게 하면 NSUndoManager 실례의 요구를 만족시키면 된다.
    나는 NSUndoManager를 안두/리두 처리에 사용하지 않았기 때문에 어댑터의 느낌으로 덮어쓰고 싶다NSUndoManager.
    적절한 코드
    class TestUndoManager : NSUndoManager {
        override var canUndo: Bool { return true }
        override var canRedo: Bool { return true }
        override func undo() {
            println("undo called!!")
        }
        override func redo() {
            println("redo called!!")
        }
    }
    

    끝날 때


    일단 조사해 봤는데 아직 설치가 안 돼서 거스름돈이 있으면 죄송합니다.
    임시 iOS9 대응은 이런 곳이죠...

    좋은 웹페이지 즐겨찾기