2015-12-01 16 views
10

जब मैं एक पूर्व एपीआई 21 डिवाइस पर मेरे अनुप्रयोग चलाने के लिए कोशिश मैं इस अजीब त्रुटि हो रही है:नहीं मिल सका वर्ग 'android.widget.ThemedSpinnerAdapter' [एंड्रॉयड स्टूडियो]

I/Choreographer: Skipped 39 frames! The application may be doing too much work on its main thread. 
12-10 07:58:44.179 4469-4472/projects.test.com.webviewtest D/dalvikvm: GC_CONCURRENT freed 156K, 4% free 4561K/4744K, paused 4ms+12ms, total 76ms 
12-10 07:58:44.409 4469-4469/projects.test.com.webviewtest I/dalvikvm: Could not find method android.widget.Spinner.getPopupContext, referenced from method android.support.v7.widget.AppCompatSpinner.getPopupContext 
12-10 07:58:44.409 4469-4469/projects.test.com.webviewtest W/dalvikvm: VFY: unable to resolve virtual method 18719: Landroid/widget/Spinner;.getPopupContext()Landroid/content/Context; 
12-10 07:58:44.409 4469-4469/projects.test.com.webviewtest D/dalvikvm: VFY: replacing opcode 0x6f at 0x000b 
12-10 07:58:44.419 4469-4469/projects.test.com.webviewtest I/dalvikvm: Could not find method android.content.Context.getDrawable, referenced from method android.support.v7.widget.AppCompatSpinner.setPopupBackgroundResource 
12-10 07:58:44.419 4469-4469/projects.test.com.webviewtest W/dalvikvm: VFY: unable to resolve virtual method 255: Landroid/content/Context;.getDrawable (I)Landroid/graphics/drawable/Drawable; 
12-10 07:58:44.419 4469-4469/projects.test.com.webviewtest D/dalvikvm: VFY: replacing opcode 0x6e at 0x0004 
12-10 07:58:44.429 4469-4469/projects.test.com.webviewtest I/dalvikvm: Could not find method android.widget.PopupWindow.showAsDropDown, referenced from method android.support.v7.widget.AppCompatPopupWindow.showAsDropDown 
12-10 07:58:44.429 4469-4469/projects.test.com.webviewtest W/dalvikvm: VFY: unable to resolve virtual method 18641: Landroid/widget/PopupWindow;.showAsDropDown (Landroid/view/View;III)V 
12-10 07:58:44.429 4469-4469/projects.test.com.webviewtest D/dalvikvm: VFY: replacing opcode 0x6f at 0x000d 
12-10 07:58:44.459 4469-4469/projects.test.com.webviewtest I/dalvikvm: Could not find method android.widget.CompoundButton.drawableHotspotChanged, referenced from method android.support.v7.widget.SwitchCompat.drawableHotspotChanged 
12-10 07:58:44.459 4469-4469/projects.test.com.webviewtest W/dalvikvm: VFY: unable to resolve virtual method 18333: Landroid/widget/CompoundButton;.drawableHotspotChanged (FF)V 
12-10 07:58:44.459 4469-4469/projects.test.com.webviewtest D/dalvikvm: VFY: replacing opcode 0x6f at 0x0006 
12-10 07:58:44.559 4469-4469/projects.test.com.webviewtest E/dalvikvm: Could not find class 'android.widget.ThemedSpinnerAdapter', referenced from method android.support.v7.widget.AppCompatSpinner$DropDownAdapter.<init> 
12-10 07:58:44.569 4469-4469/projects.test.com.webviewtest W/dalvikvm: VFY: unable to resolve instanceof 2184 (Landroid/widget/ThemedSpinnerAdapter;) in Landroid/support/v7/widget/AppCompatSpinner$DropDownAdapter; 
12-10 07:58:44.569 4469-4469/projects.test.com.webviewtest D/dalvikvm: VFY: replacing opcode 0x20 at 0x0016 

वास्तव में मैं नहीं डॉन एक एएनआर या दुर्भाग्य से आपके ऐप ने काम करना बंद कर दिया, ऐप चुपचाप मुख्य गतिविधि से बाहर निकल गया।

मैं अपने आवेदन में किसी भी हेवीवेट छवियों का उपयोग नहीं कर रहा हूं, केवल चार स्पिनरों वाला एक पृष्ठ।

विशेष रूप से, इस लाइन लाल रंग में हाइलाइट किया जाता है:

E/dalvikvm: Could not find class 'android.widget.ThemedSpinnerAdapter', referenced from method android.support.v7.widget.AppCompatSpinner$DropDownAdapter.<init> 

हालांकि के रूप में मैं ग्रहण का उपयोग नहीं कर रहा हूँ, मुझे यकीन है कि मैं Gradle का उपयोग कर उचित आयात है हूँ:

apply plugin: 'com.android.application' 

android { 
    compileSdkVersion 23 
    buildToolsVersion "23.0.1" 

    defaultConfig { 
     applicationId "projects.test.com.webviewtest" 
     minSdkVersion 14 
     targetSdkVersion 23 
     versionCode 1 
     versionName "1.0" 
    } 
    buildTypes { 
     release { 
      minifyEnabled false 
      proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 
     } 
    } 
} 

dependencies { 
    compile fileTree(dir: 'libs', include: ['*.jar']) 
    testCompile 'junit:junit:4.12' 
    compile 'com.android.support:appcompat-v7:23.1.1' 
    compile 'com.android.support:design:23.1.1' 
    compile 'com.android.support:recyclerview-v7:23.1.1' 
} 
+0

जांचें कि क्या व्यूअर व्यू के साथ लेआउट में आपके स्पिनर व्यू को देखा गया है, मेरा मतलब है कि कास्ट की जांच करें, इसलिए यदि आपके पास AppCompatSpinner है या आपकी कस्टम क्लास एक ही कक्षा – Mouloud

+0

के साथ findViewById को डालने के लिए सुनिश्चित हो, तो आपको यह त्रुटि मिल रही है पार्स का उपयोग करते समय संदेश, इस प्रश्न को देखें: 'http: // stackoverflow.com/प्रश्न/334166 9 1/खोज-श्रेणी-एंड्रॉइड-विजेट-थीड्सस्पिनरैप्टर/34 9 68810 # 34968810' –

उत्तर

4

मेरी इस स्थिति में लेआउट एक्सएमएल फ़ाइल के भीतर android:tint="?attr/colorControlNormal" के उपयोग को हटाकर हल किया गया था ... शायद यह दूसरों की मदद करता है।

1

मैंने अपनी परियोजना में compileSdkVersion को देखने में समस्या हल की। मेरे पास 4 मॉड्यूल थे, उनमें से 3 एसडीके 22 के साथ संकलित थे, एक एसडीके 23 के साथ संकलित कर रहा था।

बाद में मैंने उन सभी को एसडीके 22 में बदल दिया, समस्या हल हो गई। तो मेरी सलाह है कि एसडीके संस्करण की जांच करें और अपनी परियोजना में सभी मॉड्यूल के लिए उसी नंबर पर चयन करें।

चीयर्स

+0

किसी भी तरह मुझे लगता है कि समस्या है एसडीके संस्करण 23 – BlackPearl

1

मैं भी स्पिनर के साथ एक ही मुद्दा मिल गया है, यह कुछ उपकरणों में चल रहा है और कुछ उपकरणों में नहीं चल रहा है। क्योंकि मैंने setAdapter(null) रखा है। इस वजह से यह इस तरह व्यवहार कर रहा है। इसके बजाय ArrayList arrayList = new ArrayList(); spinner.setAdapter(new ArrayAdapter<String>(activity.this, android.R.layout.simple_dropdown_item_1line, arrayList)); डालें तो यह सभी उपकरणों में काम करेगा।

संबंधित मुद्दे