Friday 17 November 2017

Edgesforextendedlayout Phone Gap Beispiele


Ich habe ein neues Cordova-Projekt von Version 2.9.1 auf Xcode4.5.2 gestartet. Ich habe ein neues Projekt erstellt und wenn wir versuchen, es auszuführen, bekommt man den folgenden Fehler, den ich gegoogelt habe, aber ich kann keine Lösung finden, meine os Version ist 10.9 .2 UseradminDesktopaCordovaLibClassesCDVCapture. m: 605: 14: Eigenschaft edgesForExtendedLayout nicht gefunden auf Objekt des Typs CDVAudioRecorderViewController UsersadminDesktopaCordovaLibClassesCDVCapture. m: 605: 39: Verwendung von nicht deklarierter Bezeichner UIRectEdgeNone kann mir bitte jemand helfen, zielen darauf, mit diesem zu kämpfen. Vielen Dank. Gefragt 13. Mai 14 bei 7: 27Starten in iOS7, die View-Controller verwenden Vollbild-Layout standardmäßig. Zur gleichen Zeit haben Sie mehr Kontrolle darüber, wie es seine Ansichten ausstellt, und das ist mit diesen Eigenschaften getan: Grundsätzlich, mit dieser Eigenschaft legen Sie fest, welche Seiten Ihrer Ansicht erweitert werden können, um den ganzen Bildschirm zu decken. Stellen Sie sich vor, dass Sie einen UIViewController in einen UINavigationController schieben. Wenn die Ansicht dieses View-Controllers ausgelegt ist, wird es beginnen, wo die Navigationsleiste endet, aber diese Eigenschaft wird festlegen, welche Seiten der Ansicht (oben, links, unten, rechts) erweitert werden können, um den gesamten Bildschirm zu füllen. Lassen Sie es mit einem Beispiel sehen: Hier legen Sie den Wert von edgesForExtendedLayout nicht fest. Daher wird der Standardwert übernommen (UIRectEdgeAll), so dass die Ansicht ihr Layout erweitert, um den gesamten Bildschirm zu füllen. Dies ist das Ergebnis: Wie Sie sehen können, erstreckt sich der rote Hintergrund hinter der Navigationsleiste und der Statusleiste. Jetzt wirst du diesen Wert auf UIRectEdgeNone setzen. So dass Sie sagen, die View-Controller nicht zu erweitern die Ansicht, um den Bildschirm zu decken: Diese Eigenschaft wird verwendet, wenn Ihre Ansicht ist ein UIScrollView oder ähnlich, wie ein UITableView. Sie wollen, dass Ihre Tabelle beginnt, wo die Navigationsleiste endet, weil Sie den ganzen Inhalt nicht sehen werden, wenn nicht, aber gleichzeitig möchten Sie, dass Ihr Tisch den gesamten Bildschirm beim Scrollen abdeckt. In diesem Fall wird das Setzen von EdgesForExtendedLayout auf None nicht funktionieren, da Ihre Tabelle beginnt zu scrollen, wo die Navigationsleiste endet und es wird nicht dahinter gehen. Hier ist, wo diese Eigenschaft praktisch ist, wenn man den View-Controller automatisch die Insets anpasst (Einstellung dieser Eigenschaft auf JA, auch den Default-Wert) wird es Insert an die Spitze der Tabelle hinzufügen, so dass die Tabelle beginnt, wo die Navigation Bar endet, aber die Rolle wird den ganzen Bildschirm abdecken. Dies ist, wenn auf NO gesetzt ist: Und JA (standardmäßig): In beiden Fällen blättert die Tabelle hinter der Navigationsleiste, aber im zweiten Fall (JA) beginnt sie von unterhalb der Navigationsleiste. Dieser Wert ist nur eine Ergänzung zu den vorherigen. Wenn die Statusleiste opak ist, werden die Ansichten nicht auf die Statusleiste erweitert, es sei denn, dieser Parameter ist JA. Also, wenn du deine Ansicht verlängst, um die Navigationsleiste zu decken (edgesForExtendedLayout zu UIRectEdgeAll) und der Parameter ist NEIN (Standard), wird es nicht die Statusleiste abdecken, wenn es opak ist. Wenn etwas nicht klar ist, schreiben Sie einen Kommentar und Ill Antwort darauf. Wie IOS weiß, was UIScrollView für die Verwendung von iOS die erste Subview in deiner Viewcontroller-Ansicht, also die bei Index 0, und wenn es eine Unterklasse von UIScrollView dann die erklärten Eigenschaften anwendet. Natürlich bedeutet dies, dass UITableViewController standardmäßig arbeitet (da die UITableView die erste Ansicht ist).

No comments:

Post a Comment