2014-05-01 8 views
6

नहीं मिला मुझे यह त्रुटि मिल रही है और यह मेरे ऐप को क्रैश कर रहा है। नए v4 स्वाइप रीफ्रेश लेआउट को लागू करने की कोशिश कर रहा है। मैंने समर्थन लाइब्रेरी + एसडीके अपडेट किया है। मामला क्या है?कक्षा 'android.support.v4.widget.SwipeRefreshLayout'

नहीं मिल सका वर्ग 'android.support.v4.widget.SwipeRefreshLayout', विधि से संदर्भित ...... onCreate

import android.support.v4.widget.SwipeRefreshLayout; 
... 
private SwipeRefreshLayout swipeLayout; 

@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 

    setContentView(R.layout.home_page_list); 
swipeLayout = (SwipeRefreshLayout) findViewById(R.id.container); 
    swipeLayout.setColorScheme(android.R.color.holo_blue_bright, 
      android.R.color.holo_green_light, 
      android.R.color.holo_orange_light, 
      android.R.color.holo_red_light); 
    swipeLayout.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() { 
     @Override 
     public void onRefresh() { 
      swipeLayout.setRefreshing(false); 
     } 
    }); 

एक्सएमएल

<android.support.v4.widget.SwipeRefreshLayout xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:tools="http://schemas.android.com/tools" 
android:id="@+id/container" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
tools:context="com.devrim.ythaber.HomeActivity" 
tools:ignore="MergeRootFrame" > 

<ScrollView 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" > 

    <LinearLayout 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:orientation="vertical" > 

     <ImageView 
      android:id="@+id/thumb" 
      android:layout_width="100dp" 
      android:layout_height="100dp" 
      android:contentDescription="@string/app_name" /> 

     <RelativeLayout 
      android:id="@+id/relativeLayout1" 
      android:layout_width="wrap_content" 
      android:layout_height="290dp" 
      android:layout_centerVertical="true" 
      android:layout_marginLeft="5dp" 
      android:layout_marginRight="5dp" 
      android:orientation="vertical" > 

      <!-- android:layout_toRightOf="@+id/thumb" --> 

     </RelativeLayout> 

     <TextView 
      android:id="@+id/title" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_gravity="left" 
      android:ellipsize="end" 
      android:fontFamily="sans-serif-light" 
      android:maxLines="2" 
      android:shadowColor="@color/dropshadow" 
      android:shadowDx="2" 
      android:shadowDy="2" 
      android:shadowRadius="2" 
      android:text="@string/title" 
      android:textAllCaps="false" 
      android:textAppearance="?android:attr/textAppearanceSmallPopupMenu" 
      android:textColor="@color/titlecolour" 
      android:textSize="35sp" 
      android:textStyle="italic" 
      android:typeface="sans" > 
     </TextView> 

     <TextView 
      android:id="@+id/category" 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" 
      android:layout_below="@+id/title" 
      android:ellipsize="end" 
      android:fontFamily="sans-serif-light" 
      android:gravity="right" 
      android:maxLines="1" 
      android:paddingRight="5dp" 
      android:paddingTop="10dp" 
      android:textAppearance="?android:attr/textAppearanceSmallPopupMenu" 
      android:textColor="@color/catcolour" 
      android:textSize="17sp" 
      android:textStyle="italic" 
      android:typeface="sans" > 
     </TextView> 
    </LinearLayout> 
</ScrollView> 
</android.support.v4.widget.SwipeRefreshLayout> 

पूरा logcat:

05-01 21:31:27.390: W/dalvikvm(11452): VFY: unable to find class referenced in signature (Landroid/support/v4/widget/SwipeRefreshLayout;) 
05-01 21:31:27.390: E/dalvikvm(11452): Could not find class 'android.support.v4.widget.SwipeRefreshLayout', referenced from method com.devrim.ythaber.HomeActivity.onCreate 
05-01 21:31:27.390: W/dalvikvm(11452): VFY: unable to resolve check-cast 619 (Landroid/support/v4/widget/SwipeRefreshLayout;) in Lcom/devrim/ythaber/HomeActivity; 
05-01 21:31:27.390: W/dalvikvm(11452): Link of class 'Lcom/devrim/ythaber/HomeActivity$1;' failed 
05-01 21:31:27.440: W/dalvikvm(11452): threadid=1: thread exiting with uncaught exception (group=0x4166ee18) 
05-01 21:31:27.440: E/AndroidRuntime(11452): FATAL EXCEPTION: main 
05-01 21:31:27.440: E/AndroidRuntime(11452): Process: com.devrim.ythaber, PID: 11452 
05-01 21:31:27.440: E/AndroidRuntime(11452): java.lang.NoClassDefFoundError: android.support.v4.widget.SwipeRefreshLayout 
05-01 21:31:27.440: E/AndroidRuntime(11452): at com.devrim.ythaber.HomeActivity.onCreate(HomeActivity.java:56) 
05-01 21:31:27.440: E/AndroidRuntime(11452): at android.app.Activity.performCreate(Activity.java:5312) 
05-01 21:31:27.440: E/AndroidRuntime(11452): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1111) 
05-01 21:31:27.440: E/AndroidRuntime(11452): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2552) 
05-01 21:31:27.440: E/AndroidRuntime(11452): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2653) 
05-01 21:31:27.440: E/AndroidRuntime(11452): at android.app.ActivityThread.access$800(ActivityThread.java:156) 
05-01 21:31:27.440: E/AndroidRuntime(11452): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1355) 
05-01 21:31:27.440: E/AndroidRuntime(11452): at android.os.Handler.dispatchMessage(Handler.java:102) 
05-01 21:31:27.440: E/AndroidRuntime(11452): at android.os.Looper.loop(Looper.java:157) 
05-01 21:31:27.440: E/AndroidRuntime(11452): at android.app.ActivityThread.main(ActivityThread.java:5872) 
05-01 21:31:27.440: E/AndroidRuntime(11452): at java.lang.reflect.Method.invokeNative(Native Method) 
05-01 21:31:27.440: E/AndroidRuntime(11452): at java.lang.reflect.Method.invoke(Method.java:515) 
05-01 21:31:27.440: E/AndroidRuntime(11452): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1069) 
05-01 21:31:27.440: E/AndroidRuntime(11452): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:885) 

उत्तर

0

सत्यापित करें कि आप एंड्रॉइड समर्थन लाइब्रेरी हैं जो आपके एसडीके प्रबंधक में स्थापित है 1 9 .1 और न केवल 19.

यदि यह है और आपने अपनी परियोजना को नई लाइब्रेरी में अपडेट करने का प्रयास किया है, तो मुझे पता चला है कि यह ठीक से काम नहीं करता है। एक खाली नई एंड्रॉइड एप्लिकेशन प्रोजेक्ट बनाएं और समर्थन लाइब्रेरी को अपनी मौजूदा प्रोजेक्ट में/libs/over से कॉपी करें और इसे फिर से प्रयास करें।

3

यदि आप गद्दे का उपयोग कर रहे हैं, तो आप यह जांचना चाहेंगे कि आपने एंड्रॉइड समर्थन लाइब्रेरी के 19.1 संस्करण का उपयोग करने के लिए अपनी कॉन्फ़िगरेशन अपडेट की है। लाइन निम्नलिखित देखें: android-support-v13.jar:

dependencies { 
    compile 'com.android.support:support-v4:19.1.+' 
} 
3

मेरे लिए, समस्या यह है कि मेरे पुस्तकालय परियोजनाओं में से एक v13 समर्थन पुस्तकालय की का उपयोग कर रहा था।

तो आपके लॉग में इस प्रकार का संदेश के लिए बाहर देखने:

Found both android-support-v4 and android-support-v13 in the dependency list. 
Because v13 includes v4, using only v13. 

आप देखते हैं कि चेतावनी, सुनिश्चित करें कि आपके पुस्तकालय परियोजना भी नवीनतम समर्थन पुस्तकालय भी शामिल करते हैं, अन्यथा आपके v4 पुस्तकालय अधिक्रमण हो सकता है तो पुराने v13 लाइब्रेरी (जिसमें स्पष्ट रूप से नया SwipeRefreshLayout शामिल नहीं है) द्वारा।

+0

आपने समस्या का समाधान कैसे किया? मैं वही अटक गया हूँ। –

+0

मुझे अभी तक कोशिश करने का मौका नहीं मिला है क्योंकि मैं कुछ और कर रहा हूं @rogerthatcode –

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