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.