본문 바로가기
WWDC

WWDC 21 - What’s new in UIKIt

by vapor3965 2021. 6. 16.

목차


    • 세션보면서 정리한 내용입니다. 해석이 잘못된 경우가 있을수있으니 발견하시면 댓글로 남겨주시면 감사하겠습니다🙏🏻

     

     

    요약

    • iPad에서는 context menu에서 독자적으로 scene을 만들어주는 기능이생겼다.
    • 다른앱간에 drag and drop이 가능해졌다.
    • UIToolbar, UITabbar 아래로스크롤했을떄 background material을 삭제하는걸로 default된다.그에따라 기존API가 에러를 발생할수있는 경우가있고, default하지않게하기위해서는 따로 custom appearance를 만들어줘야한다.
    • 새로운 섹션헤더가 생겼다.
    • Sheet표현을 반만덮도록? 하는 기능이생겼다. 👍
    • 이제 UIDatePicker에는 wheel방식을 다시도입했다. 터치해서 키보드로도 변경가능하다. 👍
    • UIButton에 다양한 configuration이생겼다. tinted, filled, multiple lines
      • 아마 이제 텍스트,이미지 등을 configration 프로퍼티에서해야하는듯.
    • SF symbol에 다채로운 색을 지원할수있게됐다.
    • UICollectionView,TableView에 cell configruationUpdateHandler 클로저로 새로등장했다.

     

     



    이렇게 iPad에관한 더 자세한설명은 sesion을 참고!


    open in new Window를 통해 독자적으로 Scene을 만들어낼수있다.


    지원하는방법은, ActivationAction

    • 클로저를 받고, activationConfiguration을 return한다.
    • 해당 action을 context menu에 추가하면그만이다!

    Pointer band selection - 포인터 드래그로 멀티터치가능하게끔!

    • CollecitonView가 multi selection을허용한다면 default로 가능하게했다!

     

     

    iPad 15부터는 키보드숏컷메뉴가 바뀌었다.
    iPad, Mac 카탈리스트에서 사용이가능하다.


    지원하는방법!

    이렇게 iPad에관한 더 자세한설명은 sesion을 참고!


    👍iOS 15에서는 앱간의 드래그및 드랍이 가능해졌다.!!


    이렇게 다른 앱에서, 사진을 긁어와 메세지엡에드래그드롭할수있음!!


    드래그및드롭은 크게변하지않았고,
    다양한 드래그드롭을 알아보고싶다면, 아래와같이 session참고,

     

     

     

     

    UI변경

    UIToolbar, UITabbar변경했다.

    • 스크롤중에는 아래로스크롤됐을때, 백그라운드material을 삭제한다 ? ( 경계선을없애주는건가, 딱 이미지만남도록하나봐 )

    위의기능을 사용하기위해서는, ( default로적용되는데, )
    기존의몇가지문제점이 발생할수있다. ( 아래들을 피해야한다. )

    만약 이 default기능이마음에안든다면, custom appearance 만들고 할당해라.
    해당프로퍼티는 UInaivgationBar에서만 적용이가능했는데 이제는 UIToolbar, UITabBar도 적용가능하다.

    새로운 섹션 헤더를 추가했다.

    Plain은 다음과같이 업데이트됏다.

    • 컨텐트와 일치하는 모습으로보여준다.
    • 백그라운드material이 보여지는경우는, 스크롤하면서 핀된경우에만 보여진다.
    • 연락처앱 유용하다.

    많지않은 컨텐츠를 가지고있는 경우에 적절한 grouped style도 생겼따.

    • 설정화면에 유용하다.

    새롭게추가된 헤더.

    • 중요하게강조하는헤더?
    • 사이드바리스트를 적용하는데 유용하다.

    • we have a new extra prominent grouped style for use with content that is visually rich so that headers maintain hierarchy and avoid becoming lost.

    이렇게, 알람, 워치앱에서 유용하다?


     

     

     


    • To access all of these great header styles, use the UIListContentConfiguration API introduced in iOS 14. In iOS 14.5 we introduced UIListSeparatorConfiguration that allows full control over separators in a list. You can specify a configuration for the entire list, or you can override the system-generated appearance on a per-row basis, giving you full control over separators

     

     

     

    👍Sheet

    iOS15에서는 스크린의 반만 덮도록 하는기능이생겼다.

    • dimming을 disable할수도있다.

     

     

     

    UIDatePicker

    • 다시, wheel 시간을 도입했다. ( 오호호 휠은 iOS의 트레이드마크인데!! 다시 돌아와야지 )  
    • 대신, 탭하여, 시간을 키보드로변경할수도있다.


    iPad에서는 키보드로 바로수정할수도있고,
    탭하면 휠이 나타나도록할수있다.


     

     

     

    enhance

    gray,tinted, filled, 그리고 멀티라인텍스트지원!


    • Together with the UIMenu additions to buttons released in iOS 14, UIButtonConfiguration allows you to make pop-up and pull-down buttons natively in UIKit for the first time.

    또한, mac을위해, Xcode에서 Optimize Interface For Mac을 설정하면, 버튼들은 아래와같이보인다.

    오호, config로 따로 title,image다 정하네,

    자세한건 아래참고,

     

     

     


    UIContextMenu에서, collapsible한 서브메뉴를 지원한다.

    > 을 탭하면 나타난다.

    • 새로운 API는 없는데, 기존에도 서브메뉴가있었지만, 화면을대채했었고, 이제는 자동적으로 collapsible로바뀜

     

     

     

     

     

     

     

     

    iOS13부터 SF symbol을 지원했다.

    • 이제는, Hierarchical( 강조색 ) , Palette( 멀티컬러), MultiColor(지정된색)를 지원한다.
    • Monochrome은 단일색상만지원하고, ( 원래처럼 )

    이렇게, 쉽게적용가능함. - SYmbolConfiguration


    음, 다양한조합으로만들수있다뭐그런건가

    • In previous releases, these are selected by specifying dotted strings. In iOS 15, there is a new UIImage API that makes working with these variants super easy, whether you want to specify the type up-front, or to generate a variant of an existing image. This is the symbol represented by the "heart" string, and two of its variants, which can now be selected in code.

     

     

     

     

     

    dynamic size에서도 최소,최대를 지정할수있게되었다.


    이제는 모든플랫폼에서도 시스템컬러를 동일화했다.

     

     

     

    새로운 Texkit2이생겼고 , Textfield에서 적용된다.


    iOS15에서는, Shiri shared this 를통해서, 공유가능한 컨텐츠를 보여주도록한다?

     

     

     

     

     

     

    Collection,TableView에서도 향상점이있는데,
    iOS14에서부터 셀을 더 쉽게만들도록 했다.
    iOS15에서는 클로저업데이트핸들러를 통해 셀을 더 쉽게 reconfigure하게했다.


    diffable data source에서 이제는 에니메이션없이도 적용할수이따?


    iOS15에서는 cell prefetching에 변화를 주었따. 이는 자동적으로 iOS15에서 가능해진다.


    셀에서 이미지를 처리하여보여줄때,
    이제는 async - await 로 쉽게 비동기적으로 수행할수있따?
    👍또한, 큰이미지를 작게만들어주는 쉬운 API가 생겼따.


     

     

     

    Location Button이 생겼다.
    오직한번만, 등이 적용되어, 많은부분들을 줄여주었따.


    Paste에도 새로운 특성들이생겼다.

    댓글