https://github.com/TTTAttributedLabel/TTTAttributedLabel
여기서 일단 podfile 에 다가 아래 문장을 추가 후 pod install!! 로 설치를 한다.
그리고 앱을 한번 빌드 시킨다 그래야 임폴트 시킬수 있다.
command + b 로 빌드 후 #import TTTAttributedLabel 로 임폴트!

라벨 만든 것을 클릭 후에 위에 처럼 설정해준다.
여기서 일단 podfile 에 다가 아래 문장을 추가 후 pod install!! 로 설치를 한다.
pod 'TTTAttributedLabel'
그리고 앱을 한번 빌드 시킨다 그래야 임폴트 시킬수 있다.
command + b 로 빌드 후 #import TTTAttributedLabel 로 임폴트!

라벨 만든 것을 클릭 후에 위에 처럼 설정해준다.
@IBOutlet weak var explainLabel: TTTAttributedLabel!
UILabel 로 만들지 말고 위에 처럼 TTTAttributedLabel 로 만들고 연결시켜준다.
기본 세팅은 완료!
깃허브 자료를 보고는 swift로 적용하기가 정말 힘들었다.. 그래서 정리 중...
먼저 대부분 하고 싶은 것들은 특정 단어에 클릭이벤트를 심고 눌렀을 경우 (해시태그 처럼) 기능을 구현하는것이다.
그럼 먼저
클래스에 TTTAttributedLabelDelegate 를 상속시켜주고
viewdidload() 안에다가 explainLabel.delegate = self 로 딜리게이트 시켜준다.
func attributedLabel(label: TTTAttributedLabel!, didSelectLinkWithURL url: NSURL!) {
//원하는 기능 구현
}
이 위에 소스에서 링크를 클릭 하면 해당 문자열(url)을 얻을 수 있으니 그것을
url.absoluteString 문자열로 비교해서 원하는 작업을 하면 될 것 같다.
-- 링크거는 코드 ---
explainLabel.addLinkToURL(NSURL(string:"http://www.naver.com")!, withRange: NSMakeRange(6,8))
이런 식으로 링크을 애드 시켜줄 수 있고
--- 내가 운좋게 찾은 소스 -----
위에 다 설정해도 반응이 없을 수가 있는데 내가 그랬다.
일단 나의 문제만 해결 했기에 그것만 공유하도록 하겠습니당.
저는 제스쳐인식 기능을 심어 놨는데 그중에 옵션을 tap.cancelsTouchesInView = false\
로 바꿔주니까 클릭이벤트가 잘 이루어 졌다.
댓글
댓글 쓰기