2016-03-24 95 views
1

我有一個下一碼:java.lang.NoClassDefFoundError在片段

import android.support.v4.app.Fragment; 
public class HomeFragment extends Fragment{ 
... 
private class TabAdapter extends FragmentPagerAdapter { 
     @Override 
     public Fragment getItem(@Tab int position) { 
      switch (position) { 
       case TAB1: 
        return SearchFragment.newInstance(); 
       ... 
      } 
     } 
} 
... 
} 

import android.location.Location; 
import android.os.Bundle; 
import android.widget.AbsListView; 
import android.widget.ListView; 
public class SearchFragment extends Fragment{ 
... 
     public static SearchFragment newInstance() { 
      SearchFragment fragment = new SearchFragment(); 
      return fragment; 
     } 
     private class C implements ListView.OnScrollListener{ 
     ... 
     } 
     @Override 
     public void onViewCreated(View view, @Nullable Bundle savedInstanceState) { 
      super.onViewCreated(view, savedInstanceState); 

      C c = new C(); 
     } 
... 
} 

當我在Android 4.3的執行此代碼(< 5)我得到一個錯誤的java.lang .NoClassDefFoundError:xx.xx.SearchFragment $ C

在Android中5和6中的所有確定

logcat的輸出:

FATAL EXCEPTION: main 
java.lang.NoClassDefFoundError: xx.xx.SearchFragment$C 
    at xx.xx.HomeFavoriteFragment.<init>(SearchFragment.java:170) 
    at xx.xx.SearchFragment.newInstance(SearchFragment.java:43) 
    at xx.xx.HomeFragment.<init>(HomeFragment.java:344) 
    at xx.xx.HomeFragment.newInstance(HomeFragment.java:72) 
    at com.google.android.gms.common.internal.zzk.zzk(Unknown Source) 
+0

請發表你這是在SearchFragment.java進口。發佈完整的logcat也有幫助。 –

回答

1

嘗試導入支持片段SearchFragment.java這樣的:

import android.support.v4.app.Fragment; 

這可能是因爲編譯器可能使用android.app.Fragment默認。