Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Beispielnachrichten
warning XA1005: Attempting basic type name matching for element with ID '@+id/text1' and type 'android.widget.TextView'
warning XA1005: If basic type name matching fails, please add a `xamarin:managedType` attribute to the element to specify the fully qualified managed type name of the element.
Thema
Wenn Layoutbindungen und Code-Behind aktiviert sind, wird diese Warnung für jedes Layoutelement ausgegeben, bei dem das //*/@android:id Attribut gesetzt ist und ein vollständig qualifizierter Name für den Elementtyp verwendet wird.
Die Warnung wird beispielsweise für beide der folgenden Elemente ausgegeben:
<android.widget.TextView
android:id="@+id/text1" />
<Android.Widget.TextView
android:id="@+id/text2" />
Es wird jedoch nicht für Elemente ausgegeben, die nur einen nicht qualifizierten Klassennamen verwenden:
<TextView
android:id="@+id/text1" />
Der "grundlegende Typnamenabgleich" versucht sicherzustellen, dass jeder vollqualifizierte Typname ein C#-Name und kein Java-Name ist. Zunächst wird eine kurze Liste bekannter Zuordnungen zwischen Java-Namespaces und C#-Namespaces überprüft, z. B. die Zuordnung von android.view zu Android.Views. Für alle verbleibenden Namespaces teilt er den Namespace auf . und schreibt jeden Teil groß.
Lösung
Um diese Warnung zu beheben, ändern Sie jedes Element so, dass er seinen nicht qualifizierten C#-Klassennamen verwendet, oder fügen Sie jedem Element ein xamarin:managedType Attribut hinzu, um den vollqualifizierten C#-Namen anzugeben.