티스토리 뷰

반응형

UIKeyCommand  는 하드웨어 키보드에서 수행되는 키 누름과 그에 따른 동작을 지정하는 객체라고 합니다.

이것을 통해서 키보드의 방향키를 인지하게 할 수 도 있고 원하는 단축어를 만들 수도 있는 것 같아요

 

다양하게 많이 할 수 있지만, 우선 오늘 알게 된 키보드 화살표 키를 인지하는 것을 간단히 정리-!! 

 

1. keyCommands를 오버라이딩 하기 

 

keycommands를 오버라이딩 하여서 원하는 keyCommand와 동작을 지정해줄 수 있습니다.

 

 

2. addKeyCommand 하기

 

UIViewController의 addKeyCommand 함수를 이용해서 원하는 keyCommand와 동작을 지정해줄 수 있습니다.

 

 

 

[다른 키 + 방향키를 인지하고 싶다면]

 

그럴땐 modifierFlags를 이용해주면 됩니다-!!

 

ex) Shift 키 + 화살표 UP키를 인지하고 싶을 때

 

UIKeyCommand(input: UIKeyCommand.inputUpArrow, modifierFlags: .shift, action: #selector(keyboardUpArrowDidPressed))

 

ex) Command 키 + Shift 키 + 화살표 UP키를 인지하고 싶을 때

UIKeyCommand(input: UIKeyCommand.inputUpArrow, modifierFlags: [.command, .shift], action: #selector(keyboardUpArrowDidPressed))

 

[유의사항] 

 

키보드 방향키 관련 keyCommand를 쓰는 viewController에 textView를 올리면

textView에서 방향키를 누르면 자동으로 커서 이동해주는 것이 안먹힙니다-!! 

 

반응형
댓글