사용 URL.scheme
UITableViewCell
클래스의 UITextView
에서 해시 태그를 사용할 수 있지만 두 가지 문제가 있습니다.UITextView에서 UITableViewCell 클래스의 hashtag을 탭한 후 segue 시도
처음으로 세포 등급에서 segue하는 방법. 나는 perform
segue 기능이 없습니다. UITableView
클래스에만 있습니다.
두 번째 해시 태그 이름 또는 언급 이름을 새로운 UIViewController
에 보내는 방법. 위임 메서드를 사용하거나 segue 수행을 통해 보낼 수 있습니다. 그러나 다시 어떻게 세포 계급에서 나눌 것인가.
다음 코드는이 일을 여러 가지 방법이 있습니다
func textView(_ textView: UITextView, shouldInteractWith URL: URL, in characterRange: NSRange) -> Bool {
let path = URL.absoluteString
switch URL.scheme! {
case "hash" :
let hash = path.removingPercentEncoding?.components(separatedBy: ":").last
print(hash!) // ---> Retriving tapped on hash name correctly
case "mention" :
let mention = path.removingPercentEncoding?.components(separatedBy: ":").last
print(mention!) // ---> Retriving tapped on mention name correctly
default:
print("Just a regular link \(path.removingPercentEncoding!)")
}
return true
}
위대한 답변과 나는 그것이 효과가 있다고 생각합니다. 하지만 내 ViewController는 내가 이야기하려고하는 스토리 보드와는 다른 스토리 보드에 있습니다. 어떻게이 문제를 해결할 수 있다고 생각하니? –
스토리 보드 참조를 사용할 수 있습니다. 이것은 뷰 컨트롤러처럼 스토리 보드로 드래그 할 수있는 또 다른 객체이며, 뷰어 컨트롤러에 세그 (segue)를 연결할 수 있습니다. – daltonclaybrook
예 이것은 내가 선택한 스토리 보드에 instantiateViewController를 한 것입니다. 감사 :)) –