Vladius001 Vladius001 - 1 year ago 928
Swift Question

Ios 10 Today Extension. How to work with display mode?

Widgets now include the concept of display mode (represented by NCWidgetDisplayMode), which lets you describe how much content is available and allows users to choose a compact or expanded view.

How to expand widget in ios 10.0? It doesn't work as in ios 9.

Answer Source

Ok, i found right solution here.

1) Set the display mode to NCWidgetDisplayModeExpanded first in viewDidLoad

override func viewDidLoad() {
    self.extensionContext?.widgetLargestAvailableDisplayMode = NC

2) implement new protocal method

func widgetActiveDisplayModeDidChange(_ activeDisplayMode: NCWidgetDisplayMode, withMaximumSize maxSize: CGSize){
    if (activeDisplayMode == NCWidgetDisplayMode.compact) {
        self.preferredContentSize = maxSize;
    else {
        self.preferredContentSize = CGSize(width: 0, height: 200);

And it will work as official apps.


Recommended from our users: Dynamic Network Monitoring from WhatsUp Gold from IPSwitch. Free Download