일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | |
7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 | 30 |
- tableView
- Xcode
- 클린 코드
- SWIFT
- Refactoring
- collectionview
- HIG
- rxswift
- Protocol
- 리팩토링
- swift documentation
- RxCocoa
- ribs
- UITextView
- swiftUI
- uitableview
- Human interface guide
- uiscrollview
- MVVM
- map
- 리펙터링
- Clean Code
- 스위프트
- clean architecture
- 리펙토링
- 애니메이션
- Observable
- UICollectionView
- combine
- ios
- Today
- Total
목록NSMutableAttributedString (4)
김종권의 iOS 앱 개발 알아가기
NSAttributedString과 NSMutableAttriubtedString 차이점 AttributedString 이란? AttributedString은 내부적으로 guts라는 인스턴스가 String 타입을 받아서 String에 속성을 부여하여 사용할 수 있도록 구현해 놓은 것 즉, String을 wrapping하여 단순 text에 색깔, 폰트와 같은 속성을 입힐 수 있도록 한 것 (구체적인 구현부는 swift-foundation 코드 참고) 초기화하고 값을 바꿀수 있다면 NSMutableAttributedString, 초기화 이후 값을 변경할 수 없다면 NSAttributedString 사용 NSAttributedString 예제) let attributes: [NSAttributedString...
UITextView에서 링크 걸기 dataDetectorTypes = .link 옵션을 주어서 링크 활성화 isEditable도 false로 설정하면, text에 링크가 있으면 자동으로 링크가 자동으로 설정 private lazy var textView: UITextView = { let view = UITextView() view.text = "링크: https://ios-development.tistory.com/" view.dataDetectorTypes = .link view.isEditable = false return view }() 클릭하면 자동으로 safari로 이동 하이퍼 링크로 이동될 때 따로 `UIApplication.shared.open(url)`와 같은 코드가 필요 없는 장점이 존..
기본 개념 NSMutableAttributedString 텍스트 + 속성값을 가지고 있는 인스턴스 속성값: 텍스트 색상, 폰트, 하이퍼링크 등 NSMutableParagraphStyle 텍스트에 속성을 주입할 수 있는 인스턴스 UILabel에 간격 부여 방법 extension UILabel { func setLineSpacing(spacing: CGFloat) { } } text를 생성자로 주입하여 NSMutableAttributedString 인스턴스를 생성 guard let text = text else { return } let attributeString = NSMutableAttributedString(string: text) NSMutableParagraphStyle 인스턴스에 속성을 추가하고..
변환형 - 특정 문자열을 입력하면 그 문자열만 bold로 바꾸는 방법 UILabel extension으로 정의 extension UILabel { func bold(targetString: String) { let fontSize = self.font.pointSize let font = UIFont.boldSystemFont(ofSize: fontSize) let fullText = self.text ?? "" let range = (fullText as NSString).range(of: targetString) let attributedString = NSMutableAttributedString(string: fullText) attributedString.addAttribute(.font, va..