android - ऐप: srcCompat-वेक्टर ड्रॉएबल डिज़ाइन पूर्वावलोकन में दिखाई देता है, लेकिन ऐप में दिखाई नहीं देता




imageview appcompat (2)

इस लाइन vectorDrawables.useSupportLibrary = true डालें vectorDrawables.useSupportLibrary = true अपने build.graddle फ़ाइल में डिफ़ॉल्ट कॉन्फ़फ़ बयान के भाग के रूप में। मैंने यहां प्रदान किए गए वर्णन का उपयोग किया है और यह काम करता है सोचें आपको ये पता होना चाहिए कि कॉन्फ़िग ग्रेड 2.0 2.0 और ग्रेडल 1.5 के लिए अलग दिखता है।

आपके द्वारा उपयोग किए जा रहे ग्रैडल संस्करण के बावजूद, आपको यह सुनिश्चित करना होगा कि आपकी गतिविधि को वेक्टर समर्थन प्रदान करने के लिए AppCompatActivity का विस्तार करना होगा।

drawable / 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'
}

एंड्रॉइड स्टूडियो के डिज़ाइन फलक में छवि ठीक से दिखाई देती है। लेकिन जब मैं ऐप चलाता हूं, तो छवि दिखाई नहीं देती छवि कार्डव्यू में है, जो रीसाइक्वेर्यूफ्रेममेंट में है। अन्य वस्तुओं को सही ढंग से प्रस्तुत करना केवल वेक्टर ड्रबर्स प्रस्तुत करना नहीं है।

इसके अलावा, लिंट त्रुटि लेआउट फ़ाइल में दिखाई देती है

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

जब मुझे आपकी समस्या है तो मुझे यह जवाब मिला त्वरित जवाब है कि आपको android.support.v7.widget.AppCompatImageView और ऐप का उपयोग करना चाहिए : srcCompat

यह लिंक इसे समझाता है







xml-drawable