Android용 .NET 경고 XA1005
예제 메시지
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.
문제
레이아웃 바인딩 및 코드 숨김을 사용하도록 설정하면 특성이 설정되고 요소 형식에 정규화된 이름을 사용하는 모든 레이아웃 요소 //*/@android:id
에 대해 이 경고가 내보내집니다.
예를 들어 다음 두 요소 모두에 대해 경고 가 내보내질 수 있습니다.
<android.widget.TextView
android:id="@+id/text1" />
<Android.Widget.TextView
android:id="@+id/text2" />
그러나 다음과 같이 정규화되지 않은 클래스 이름만 사용하는 요소에는 내보내지지 않습니다.
<TextView
android:id="@+id/text1" />
"기본 형식 이름 일치"는 정규화된 형식 이름이 Java 이름이 아닌 C# 이름인지 확인합니다. 먼저 Java 네임스페이스와 C# 네임스페이스 간의 알려진 매핑(예: 매핑)의 android.view
Android.Views
짧은 목록을 확인합니다. 나머지 네임스페이스의 경우 네 .
임스페이스를 분할하고 각 부분을 대문자로 표시합니다.
솔루션
이 경고를 해결하려면 각 요소를 변경하여 정규화되지 않은 C# 클래스 이름을 사용하거나 각 요소에 특성을 추가하여 xamarin:managedType
정규화된 C# 이름을 지정합니다.