LoginSignup
2
2

More than 5 years have passed since last update.

iOS11でウィジェットの表示を増やす・減らす際にviewWillTransitionToSizeが呼ばれなくなった問題

Posted at

iOS10まではウィジェットのサイズを変更する際(show more、show lessボタン)にviewWillTransitionToSize:withTransitionCoordinator:が呼ばれていたところがiOS11では呼ばれなくなった件についてメモします。
(書き方の問題もあるので今回のような件はあまりないと思いますが・・)

if (activeDisplayMode == NCWidgetDisplayModeCompact) {
        //小さいデフォのサイズ
} else { //show more状態
        //拡げたサイズ
        bigSize += 0.1; //viewWillTransitionToSizeを呼ぶために+0.1する
        [self setPreferredContentSize:bigSize];
}

だいたいこのような実装。viewWillTransitionToSizeでサイズ変更をしたいのになぜか呼ばれなくなった。。
ただ、サイズをめっちゃ大きくしたりすると呼ばれる。

そこで0.1を0.2に変更をするとviewWillTransitionToSizeが呼ばれるようになりました。。。

if (activeDisplayMode == NCWidgetDisplayModeCompact) {
        //小さいデフォのサイズ
} else { //show more状態
        //拡げたサイズ
        bigSize += 0.2; //0.1だと呼ばれなくなった。なぜ??
        [self setPreferredContentSize:bigSize];
}

参考:
https://forums.developer.apple.com/thread/85732

2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2