일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- ios
- 리펙토링
- map
- ribs
- HIG
- RxCocoa
- Xcode
- UICollectionView
- 스위프트
- combine
- uitableview
- 리펙터링
- 클린 코드
- swiftUI
- rxswift
- Protocol
- clean architecture
- Clean Code
- Refactoring
- MVVM
- Observable
- 애니메이션
- Human interface guide
- uiscrollview
- SWIFT
- UITextView
- 리팩토링
- swift documentation
- tableView
- collectionview
- Today
- Total
목록CAShapeLayer (11)
김종권의 iOS 앱 개발 알아가기
TooltipView 구현 아이디어 UIView를 상속받은 뷰에 UILabel 하나를 가지고 있고 해당 뷰에다가 CAShapeLayer를 이용하여 위에 삼각형 형태의 tip 적용 * CAShapeLayer개념은 선 그리기(UIBezierPath, CAShapeLayer) 포스팅 글 참고 구현된 TooltipView는 내부 UILabel의 크기에 따라서 view의 height값이 동적으로 조절되고, 파라미터로 상단 tip의 시작 x위치를 넘길 수 있어서 상단에 tip이 있는 확장성 있는 뷰로 구현 TooltipView 구현 (UI 레이아웃 구현에 편리를 위해 SnapKit 사용) UIView를 상속받은 커스텀 뷰 생성 import UIKit import SnapKit class MyTopTipView: U..
View 사용하여 구현 (가장 간편) 사각형 View위에 작은 tip 추가 topView에 path와 layer설정하여 구현 좀더 구체적인 예제, 커스텀 뷰로 만드는 방법은 말풍선 뷰 구현 포스팅 글 참고 import UIKit import SnapKit class ViewController: UIViewController { private let width = 120.0 private let height = 120.0 private let someView = UIView() override func viewDidLoad() { super.viewDidLoad() self.someView.backgroundColor = .systemOrange self.view.addSubview(self.someVie..
UIBezierPath란 Bezier(베지에 곡선 할 때 베지에): 선분을 그릴 때 사용 CAShapeLayer란 CoreAnimation이라 하여 CAShapeLayer 객체를 이용하여 UIBezierPath의 색깔들을 바꿀 수 있고 view.layer에 추가될 수 있는 객체 원리 UIBezierPath객체로 선분을 그려줌 CAShapeLayer의 path에 위에서 만든 UIBezierPath객체.cgPath를 등록 CAShapeLayer로 스타일을 지정해준 뒤, view.layer.addSublayer(CASharpeLayer객체)로 추가 예제) UITextField 밑에 선분 그리기 UIBezierPath의 move(to:) 함수: 그려지는 시작 점 정의 UIBezierPath의 addLine(to..