2016년 11월 8일 화요일

Today Extension View(.compact, .expanded) Size Change (Widget Extension height 값 바꾸는 방법) @@ in Swift3 - Xcode 8.0 iOS 10

swift 3에서는 widget의 DisplayMode 에 따라 높이 값이 조절 된다
모드는 2가지로 나뉜다 

.compact (defult) : 높이값이 정해져 있어 조절 불가능 (110px)
.expanded : 자신이 높이값을 정할수 있다  단, Show more / less 버튼이 활성화 된다

 DisplayMode 를 expanded 로 하고 싶다면 TodayViewController.swift 에 아래 코드를 추가 해준다

override func viewDidLoad() {
  super.viewDidLoad()
  self.extensionContext?.widgetLargestAvailableDisplayMode = NCWidgetDisplayMode.expanded
}

그리고 아래 메소드를 추가해준다


func widgetActiveDisplayModeDidChange(_ activeDisplayMode: NCWidgetDisplayMode, withMaximumSize maxSize: CGSize){
  if (activeDisplayMode == NCWidgetDisplayMode.compact) {
  // Show less
  self.preferredContentSize = maxSize; // 110 px
  } else {
  // Show more
  self.preferredContentSize = CGSize(width: maxSize.width, height: 200)
} }

                  

빌더해서 Show Less / Show More 버튼을 눌러서 뷰 사이즈가 바뀌는것을
확인해보자

댓글 없음:

댓글 쓰기

추천 게시물

애플 개발자 등록방법 2016년 5월 8일 기준!!

애플 개발자 등록 절차 1. 개발자 등록 페이지 이동    애플 개발자 로그인 > Account 페이지 이동 > 하단 영역 클릭 (이미지 참조)   >> Enroll 클릭 >> 무조건 승인!! ...