2017-01-25 2 views
3

Я пытаюсь решить проблему с помощью моего виджета сегодня. Он не расширяется на iOS10 после нажатия кнопки «Показать больше». Размер остается неизменным.Сегодня виджет в iOS 10 не распространяется

Вот код для TodayViewController.swift

import UIKit 
import NotificationCenter 

class TodayViewController: UIViewController { 
    override func viewDidLoad() { 
     super.viewDidLoad() 

     extensionContext?.widgetLargestAvailableDisplayMode = .expanded 
    } 
} 

extension TodayViewController: NCWidgetProviding { 

    func widgetActiveDisplayModeDidChange(activeDisplayMode: NCWidgetDisplayMode, withMaximumSize maxSize: CGSize) { 
     if activeDisplayMode == .expanded { 
      preferredContentSize = CGSize(width: 0, height: 280) 
     } else { 
      preferredContentSize = maxSize 
     } 
    } 
} 

Любые намеки пожалуйста?

ответ

5

Предполагая, что вы кодирования с помощью Swift 3, пожалуйста, обратите внимание, что widgetActiveDisplayModeDidChange метод подписи:

опция FUNC widgetActiveDisplayModeDidChange (_ activeDisplayMode: NCWidgetDisplayMode, withMaximumSize MaxSize: CGSize)

Таким образом, это должно быть:

func widgetActiveDisplayModeDidChange(_ activeDisplayMode: NCWidgetDisplayMode, withMaximumSize maxSize: CGSize) { 
    if activeDisplayMode == .expanded { 
     preferredContentSize = CGSize(width: 0, height: 280) 
    } else { 
     preferredContentSize = maxSize 
    } 
} 

Чтобы проверить, что это проблема, вы можете добавить точку останова к вашему текущему методу и проверить, достижимо или нет.

Надеюсь, это помогло.

+0

Спасибо большое! Какая глупая ошибка :) –

+0

добро пожаловать! рад помочь :) –

Смежные вопросы