vectordrawables usesupportlibrary tool drawables compat android imageview appcompat xml-drawable

usesupportlibrary - vector drawables android



aplicación: srcCompat-Vector dibujable aparece en la vista previa del diseño, pero no aparece en la aplicación (2)

dibujable / information.xml

<vector xmlns:android="http://schemas.android.com/apk/res/android" android:width="24dp" android:height="24dp" android:viewportWidth="24.0" android:viewportHeight="24.0"> <path android:fillColor="#FF000000" android:pathData="M13,9H11V7H13M13,17H11V11H13M12,2A10,10 0,0 0,2 12A10,10 0,0 0,12 22A10,10 0,0 0,22 12A10,10 0,0 0,12 2Z"/> </vector>

LayoutofCardView.xml

<ImageView android:layout_width="24dp" android:background="#f00" android:layout_height="24dp" android:id="@+id/informationImageView" app:srcCompat="@drawable/information" tools:src="@drawable/information" />

build.gradle

apply plugin: ''com.android.application'' android { compileSdkVersion 23 buildToolsVersion "23.0.2" defaultConfig { applicationId "com.company" minSdkVersion 15 targetSdkVersion 23 versionCode 1 versionName "1.0" generatedDensities = [] } aaptOptions { additionalParameters "--no-version-vectors" } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile(''proguard-android.txt''), ''proguard-rules.pro'' } } packagingOptions { exclude ''META-INF/NOTICE.txt'' exclude ''META-INF/LICENSE.txt'' } } dependencies { compile fileTree(dir: ''libs'', include: [''*.jar'']) testCompile ''junit:junit:4.12'' compile ''com.android.support:appcompat-v7:23.2.1'' compile ''com.android.support:cardview-v7:23.2.1'' compile ''com.android.support:recyclerview-v7:23.2.1'' compile ''com.android.support:support-v4:23.2.1'' }

La imagen se muestra correctamente en el panel de diseño de android studio. Pero cuando ejecuto la aplicación, la imagen no aparece. La imagen está en cardView, que está en recyclerviewfragment. otros elementos se representan correctamente, solo los vectores extraíbles no se representan.

Además, aparece un error de Lint en el archivo de diseño

unexpected namespace prefix "app" found for tag ImageView app:srcCompat


Encontré esta respuesta cuando tengo tu problema. La respuesta rápida es que debe usar android.support.v7.widget.AppCompatImageView y aplicación: srcCompat

este enlace lo explica


Inserte esta línea vectorDrawables.useSupportLibrary = true en su archivo build.graddle como parte de la instrucción DefaultConfig. He usado las descripciones que se proporcionan aquí y funciona. Piensa que debes ser consciente de que la configuración se ve diferente para Gradle 2.0+ y Gradle 1.5.

Independientemente de la versión de Gradle que esté utilizando, debe asegurarse de que su actividad tenga que extender AppCompatActivity para proporcionar compatibilidad con vectores.