Imansible utilizzare srcCompat per ImageViews in android

Sto utilizzando la Libreria di supporto per la progettazione 23.2. Ho aggiunto queste righe nel mio build.gradle come il mio Gradle Plugin è la versione 1.5

defaultConfig { applicationId "com.abc.xyz" minSdkVersion 16 targetSdkVersion 23 versionCode 1 versionName "1.0" generatedDensities = [] } aaptOptions { additionalParameters "--no-version-vectors" } } 

come è specificato qui

  • Come faccio a passare i parametri a intento android in nuovo schema su cromo?
  • Come get il tempo di impiego del sistema Android e il tempo reale dalla row di command?
  • La costruzione di Gradle è terminata con 200 errori (s) - limite di cambio nello studio android
  • Android Stream video da Google drive
  • Android Spegnere l'attività Stack
  • Come posso ombreggiare il PackageManager con Robolectric
  • Ma non posso usare l'attributo srcCompat per la mia image.

     <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:srcCompat="@drawable/wallpaper"/> 

    where @ drawable / wallpaper è un file di risorse vettoriali

     <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="M4,4h7V2H4c-1.1,0 -2,0.9 -2,2v7h2V4zm6,9l-4,5h12l-3,-4 -2.03,2.71L10,13zm7,-4.5c0,-0.83 -0.67,-1.5 -1.5,-1.5S14,7.67 14,8.5s0.67,1.5 1.5,1.5S17,9.33 17,8.5zM20,2h-7v2h7v7h2V4c0,-1.1 -0.9,-2 -2,-2zm0,18h-7v2h7c1.1,0 2,-0.9 2,-2v-7h-2v7zM4,13H2v7c0,1.1 0.9,2 2,2h7v-2H4v-7z"/> 

    Dice

    Errore: (14) Nessun identificatore di risorse trovato per l'attributo 'srcCompat' nel pacchetto 'android'

    La mia versione Gradle è 1.5. Come posso usare srcCompat?

  • Impostare la posizione del cursore in android Modifica text
  • FileInputStream per arrays di byte nell'applicazione Android
  • ViewPager con frammenti - onPause (), onResume ()?
  • Osservabile vs Flowable rxJava2
  • Avviare AsyncTask da un altro AsyncTask doInBackground ()
  • Android 3.2 rimuove il titolo dalla barra delle azioni
  • 9 Solutions collect form web for “Imansible utilizzare srcCompat per ImageViews in android”

    non

     android:srcCompat="@drawable/wallpaper" 

    Fare

     app:srcCompat="@drawable/wallpaper" 

    poiché l'attributo srcCompat è effettivamente definito nella libreria AppCompat .

    Importnte, è necessario aggiungere appropriato spazio dei nomi per questo.

    xmlns: app = "http://schemas.android.com/apk/res-auto&quot;

    Importnte

    quello che stai ottenendo sembra che sia solo un errore di lancio che può essere ignorato. Ho provato e ho lo stesso errore, ma funziona correttamente.

    è ansible utilizzare gli tools:ignore="MissingPrefix" per non visualizzare temporaneamente questo errore.

    Combinando molte risposte in una sola risposta:

     <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" android:background="@color/primary"> <android.support.v7.widget.AppCompatImageView android:layout_width="300dp" android:layout_height="100dp" android:id="@+id/logoImageView" android:layout_centerHorizontal="true" android:layout_centerVertical="true" app:srcCompat="@drawable/my_logo_vector" android:tint="@color/white" /> </RelativeLayout> 

    Questo ha funzionato per me. Nessun errore. Utilizza AppCompatImageView .

    Primo (in build.gradle)

     defaultConfig { vectorDrawables.useSupportLibrary = true } 

    Secondo

     <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" app:srcCompat="@drawable/ic_traffic_black_24dp" tools:ignore="MissingPrefix" /> 

    Terzo

     xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" 

    Eccoci qui.

    app:srcCompat chiamata app:srcCompat invece di android:srcCompat .

    non

     android:srcCompat="@drawable/your_image" 

    FARE

     app:srcCompat="@drawable/your_image" 

    Finalmente

      <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" app:srcCompat="@drawable/wallpaper"/> 

    La mia versione gradel è 1.5

    Aggiorna la tua versione Gradle .

    Soluzione

     Gradle Plugin 2.0+ com.android.tools.build:gradle:2.0.0-beta2 

    I disegni vettoriali consentono di sostituire le risorse multiple di png con una singola grafica vettoriale, definita in XML. Mentre precedentemente limitato a Lollipop e ai dispositivi più alti, sia VectorDrawable che AnimatedVectorDrawable sono ora disponibili tramite due nuove librerie di supporto support-vector-drawable e support-animated-vector-drawable.

    Aggiungi questo

      // Gradle Plugin 2.0+ android { defaultConfig { vectorDrawables.useSupportLibrary = true } } 

    Noterai che questo nuovo attributo esiste solo nella versione 2.0 del Plugin Gradle. Se utilizzi Gradle 1.5, userai invece

     // Gradle Plugin 1.5 android { defaultConfig { generatedDensities = [] } // This is handled for you by the 2.0+ Gradle Plugin aaptOptions { additionalParameters "--no-version-vectors" } } 

    Attraverso i disegni vettoriali di supporto

    Stai usando android:srcCompat . Dovrebbe invece app:srcCompat come è un attributo definito all'interno di AppCompat, non all'interno dello spazio dei nomi android:

    Ho appena cambiato:

     app:srcCompat="@drawable/wallpaper" 

    a

     android:src="@drawable/wallpaper" 

    Questo ha funzionato per me.

    aggiornare il tuo plugin gradle a 2.0+

     // Gradle Plugin 1.5 android { defaultConfig { generatedDensities = [] } // This is handled for you by the 2.0+ Gradle Plugin aaptOptions { additionalParameters "--no-version-vectors" } 

    come per linee di guida del blog sviluppatore google

    http://android-developers.blogspot.in/2016/02/android-support-library-232.html

    Dallo sviluppatore di Android

    Questa libreria è ora una dipendenza della v7 AppCompat library , consentendo agli sviluppatori e all'applicazione di utilizzare facilmente i drawables vettoriali.

    Per utilizzare VectorDrawableCompat all'interno di un ImageButton o ImageView, utilizzare l'applicazione: l'attributo srcCompat XML o il metodo setImageResource ().

    Per continuare a fare riferimento agli ID attributi sul livello API 20 o inferiore, aggiungere il seguente flag di appt al file di build, gradle:

    Se stai costruendo con Plugin Android per Gradle 1.5.0 o inferiore , aggiungi le seguenti nel file build.gradle:

     android { defaultConfig { // Stops the Gradle's automatic rasterization of vectors generatedDensities = [] } // Flag that tells aapt to keep the attribute ids aaptOptions { additionalParameters "--no-version-vectors" } } 

    Se stai costruendo con Plugin Android per Gradle 2.0.0 o versione successiva , aggiungi le seguenti nel file build.gradle:

     android { defaultConfig { vectorDrawables.useSupportLibrary = true } } 

    è necessario aggiungere

    xmlns: app = "http://schemas.android.com/apk/res-auto&quot;

    al tuo layout per farlo funzionare. La mia "app: srcCompat" è stata evidenziata in rosso finché non l'ho aggiunto.

    L'Android è un fan Android di Google, tutto su telefoni Android, Android Wear, Android Dev e applicazioni Android Games e così via.