Skip to content

Latest commit

 

History

History
86 lines (72 loc) · 2.6 KB

2차.md

File metadata and controls

86 lines (72 loc) · 2.6 KB

2차도전과제

기한: ~2020.05.02(금)


NavigationBar Custom속성

// 네비게이션 영역 그라데이션색
navigationController?.navigationBar.backgroundColor = .red
// 툴바 버튼색
navigationController?.navigationBar.tintColor = .blue
// 네비게이션 영역색
navigationController?.navigationBar.barTintColor = .white
// 네비게이션 hidden with Animation
navigationController?.setNavigationBarHidden(false, animated: false)
// 네비게이션 백버튼 텍스트
navigationController?.navigationBar.backItem?.title = ""
// 네비게이션 하단밑줄 제거
navigationController?.navigationBar.shadowImage = UIImage()

Label Custom

extension UILabel {
    func underLine() {
        guard let text = self.text else {
            return
        }
        let attributedString = NSMutableAttributedString(string: text)
        attributedString.addAttribute(.underlineStyle, value: 1, range: (text as NSString).range(of: text))
        
        self.attributedText = attributedString
    }
}
  • extension
    • 기존의 타입을 확장해서 추가하는 개념
    • 여기서 self는 Label이 됨
  • NSMutableAttributedString을 이용해서 속성추가후 라벨에 적용시켜주기

ScrollView Interaction (Parallax Effect)

    override func viewDidLoad() {
        super.viewDidLoad()
        scrollView.delegate = self
        scrollView.contentInsetAdjustmentBehavior = .never
    }
extension ScrollViewController: UIScrollViewDelegate {
    func scrollViewDidScroll(_ scrollView: UIScrollView) {
        if scrollView.contentOffset.y < 0.0 {
            // Scrolling down: Scale
            imgViewHeightLayout.constant = headerImgHeight - scrollView.contentOffset.y
        } else {
            // Scrolling up: Parallax
            var height = headerImgHeight - scrollView.contentOffset.y
            height = height > minHeaderImgHeight ? height : minHeaderImgHeight
            imgViewHeightLayout.constant = height
        }
    }
}
  • scrollViewDidScroll - ScrollViewDelegate함수

    • 스크롤이 되면 실행되는 함수
  • 스크롤뷰의 contentOffset에 따라 이미지가 커지고 작아짐

  • 위로 스크롤시 최소로 보여질 높이정해주기

  • contentInsetAdjustmentBehavior

    • contentInset을 자동을 조정해주는역할
    • safe area 만큼 inset이 조정됨 (여백이 생김)