Sprache

NamespaceSupport.PushContext Methode

Definition

Starten Sie einen neuen Namespacekontext.

[Android.Runtime.Register("pushContext", "()V", "GetPushContextHandler")]
public virtual void PushContext();
[<Android.Runtime.Register("pushContext", "()V", "GetPushContextHandler")>]
abstract member PushContext : unit -> unit
override this.PushContext : unit -> unit
Attribute

Hinweise

Starten Sie einen neuen Namespacekontext. Der neue Kontext erbt automatisch die Deklarationen des übergeordneten Kontexts, verfolgt aber auch, welche Deklarationen in diesem Kontext vorgenommen wurden.

Ereignisrückrufcode sollte einen neuen Kontext einmal pro Element starten. Dies bedeutet, dass sie an beiden Stellen aufgerufen werden können. Für Elemente, die keine Namespacedeklarationen enthalten, ist der <em>ContentHandler.startElement()</em-Rückruf> der richtige Ort. Für Elemente mit einer solchen Deklaration wurde sie im ersten <em>ContentHandler.startPrefixMapping()</em-Rückruf> ausgeführt. Ein boolesches Flag kann verwendet werden, um nachzuverfolgen, ob ein Kontext noch gestartet wurde. Wenn eine dieser Methoden aufgerufen wird, überprüft sie das Flag, um festzustellen, ob ein neuer Kontext gestartet werden muss. Wenn ja, wird der Kontext gestartet und die Kennzeichnung festgelegt. Nach <em>ContentHandler.startElement()</em> wird die Kennzeichnung immer gelöscht.

Normalerweise würden SAX-Treiber einen neuen Kontext am Anfang jedes XML-Elements verschieben. Anschließend führen sie eine erste Übergabe der Attribute durch, um alle Namespacedeklarationen zu verarbeiten, wodurch <em>ContentHandler.startPrefixMapping()</em-Rückrufe> vorgenommen werden. Anschließend wird ein zweiter Durchlauf durchgeführt, um die namespacequalifizierten Namen für alle Attribute und für den Elementnamen zu bestimmen. Schließlich sind alle Informationen für den <em>ContentHandler.startElement()</em-Rückruf> verfügbar, sodass sie dann vorgenommen werden können.

Das Namespace-Unterstützungsobjekt beginnt immer mit einem bereits in Kraft getretenen Basiskontext: In diesem Kontext wird nur das Präfix "xml" deklariert.

Java Dokumentation für org.xml.sax.helpers.NamespaceSupport.pushContext().

Teile dieser Seite sind Änderungen auf der Grundlage von Arbeiten, die von der Android Open Source Project erstellt und gemeinsam verwendet und gemäß den in der 2.5 Attribution License beschriebenen Begriffen verwendet werden.

Gilt für:

Siehe auch