정리된 뷰?

주방·2022년 7월 11일
0

Swift

목록 보기
5/17
post-thumbnail

#1. Checklist

  • Image Rendering Mode: Original vs. Template(feat. tint Color)

  • View Property

    • isHideen(feat. stackView)
    • userInteactionEnabled(feat. gesture)
    • clipsToBounds(feat. shadow, cornerRadius)
  • Event: Value Changed

  • UITabBarController / UITabBar / UITabBarItem

  • UINavigationController / UINaviagationBar / UINavigationItem

  • StackView

  • SizeClass: Compact vs. Regular


1) Image Rendering

  • 렌더링? 결과 이미지를 렌더링이라고 한다.

  • 유형

    가. Original

    • 이미지 자체의 본래 색상을 유지하면서 원본을 보여주는 것을 뜻한다.

    나. Template

    • 이미지의 형태를 나타내며, 본래 색상은 원하는 형태로 변경해서 예시 이미지 라인을 보여주는 것을 뜻한다.

2) Stack View

  • 정의
    • 열이나 행에 뷰 컬렉션을 배치하기 위한 인터페이스입니다.
    • Auto layout을 사용해 정렬된 보기의 위치를 지정하고 크기를 조정한다.
    • 스택의 축을 따라 가장자리에 정렬된 첫번째 및 마지막보기를 정렬한다.(수직, 수평)
  • 세부기능
    • Axis: 수직, 수평으로 스택의 방향을 결정한다.
    • alignmet: 수직으로 정렬된 보기의 레이아웃 결정(top, bottom, center etc.)
    • spacing: 정렬된 보기의 최소 간격을 결정한다.

3) UINavigationController

  • 정의
    • 탐색 인터페이스에서 하나 이상의 child(자식) View Controller를 관리한다.
    • 한번에 하나의 Child View를 볼 수 있다. 해당, 인터페이스를 사용해 앱에서 관리하는 계층적 데이터 구성을 모방한다. 계층 구조의 각 수준에서 콘텐츠를 표시할 적절한 화면을 제공한다.
    • 예) Settings > General > Auto - Rock
    • NavigationController는 탐색 스택이라는 정렬된 배열을 사용해 Child View Controller를 관리한다. 배열의 첫번째 View Controller는 Root View COntroller이며, Stack의 맨 아래를 나타낸다. 배열의 마지막 View Controller는 Stack의 최상위 항목이며 현재 표시되는 View Controller를 나타낸다.
  • 관리
    • Navigation Controller는 delegate 개체와 함께 동작을 조정한다. delegate 개체는 View Controller의 push, pop을 재정의하고 사용자 지정 애니메이션 전환을 제공하며 탐색 인터페이스의 기본 방향을 지정할 수 있다.
    • 제공하는 delegate 개체는 프로토콜을 따른다.(UINavigationControllerDelegate)


#2. Assignment

Assignment 2-1. 배달의 민족

  • Navigation, Tap 를 임의적으로 연결해봤음. 뷰의 색깔로 어떻게 연결되는지 시각적으로 확인하였음.

Assignment 2-2. 감정다이어리

  • 스택뷰를 활용한 레이아웃 구성 확인
  • 감정버튼 클릭 횟수 표시 시도


#3. 회고

  • 오토 레이아웃을 쓰면서 뷰를 보다 효율적으로 쓰는 방법에 대해 학습하였다. 그러나 constraint에 대한 확실한 감이 잡히지 않아 여러번 시도해보면서 작업을 진행해야 하기 때문에 어려움을 느끼고 있다.
  • 과거 View 작업을 할 때, navigation, tap bar의 경우 스토리보드로 하면 직관적으로 보며 작업할 수 있어 편리하다고 생각했다. 그러나 뷰의 갯수가 늘어날 수록 코드로 작업하는 것이 보다 효율적임을 알 수 있었음.
  • uibutton을 클릭했을 때, 카운트 되는 정보를 uilabel.text를 업데이트 하는 것으로 하면 쉽게 접근 될 것 같은데, 그부분에 대한 해소가 안되었음. 추가적인 고민이 필요함.

0개의 댓글