2016-03-24 46 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默认。