2016-09-22 5 views
0

Mein Problem ist, dass ich nicht herausfinden kann, wie meine gesamte Erweiterung angezeigt wird. Es sollte vier Reihen zeigen, aber es schneidet immer wie folgt aus:Heute Erweiterung AutoLayout funktioniert nicht

Cut off Today extension

ich einige Threads gelesen und versucht preferredContentSize aber es funktioniert auch nicht:

func widgetPerformUpdate(completionHandler: (@escaping (NCUpdateResult) -> Void)) { 
    self.preferredContentSize = CGSize(width: 0, height: 400)   
    completionHandler(NCUpdateResult.newData) 
} 

Was frustrierend ist es, dass ich shouldn benötige nicht einmal preferredContentSize, weil ich die automatischen Layout-Einschränkungen festlege!

autolayout constraints

Sie werden die untere Einschränkung bemerken eine gestrichelte Linie ist, weil es zur Zeit auf eine 999 Priorität gesetzt ist, aber ich habe es bei 1000 auch versucht.

Wie behebe ich das? Bitte helfen Sie !!

Antwort

1

Ich weiß, wovon Sie sprechen, ich habe das gleiche Problem.

Ich nähe, dass Ihr Widget nicht höher als eine bestimmte Höhe für Ihr Gerät sein kann. Sie können jedoch einen erweiterten Modus aktivieren, in dem Sie zwischen einer kompakten und einer erweiterten Ansicht Ihres Widgets wechseln können.

Ich denke, es sollte die heutige Ansicht von zu großen Widgets aufräumen.

Sie Dieser Artikel hilft: https://forums.developer.apple.com/thread/48930

Die wichtigen Stücke sind:

self.extensionContext?.widgetLargestAvailableDisplayMode = .expanded 

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

Danke, arbeitete diese. Es zwingt mich dazu, "Show More"/"Show Less" zu verwenden, aber ich kann das schaffen. –

+0

Selbe für mich muss ich auch mehr/weniger wissen, aber warum nicht - macht irgendwie Sinn :) – maddy

+0

Löst das wirklich die Probleme? Dadurch wird die statische Höhe 200 erstellt. Soll dies nicht automatisch mit dem automatischen Layout angepasst werden? Ich habe eine Frage zu diesem http://stackoverflow.com/questions/41524154/dynamic-height-using-auto-layout-in-today-extension – netigger

Verwandte Themen