pra*_*sti 16 android android-appcompat android-fragments
02-19 11:49:17.369: E/AndroidRuntime(4209): java.lang.NoClassDefFoundError: com.slidingmenus.fragments.HomeFragment
02-19 11:49:17.369: E/AndroidRuntime(4209): at com.slidingmenus.MainActivity.displayCategoryView(MainActivity.java:242)
02-19 11:49:17.369: E/AndroidRuntime(4209): at com.slidingmenus.MainActivity.onCreate(MainActivity.java:121)
Run Code Online (Sandbox Code Playgroud)
尝试堆栈溢出中建议的每个步骤,但他们没有帮助.
它在4.0+中没有错误,但在2.3.x设备中它给出了java.lang.NoClassDefFoundError
line 242: fragment = new HomeFragment();
Run Code Online (Sandbox Code Playgroud)
我从片段导入的是:
import android.app.Fragment;
import android.app.FragmentManager;
Run Code Online (Sandbox Code Playgroud)
我正在使用:
FragmentManager fragmentManager = getFragmentManager();
fragmentManager.beginTransaction().replace(R.id.frame_container, fragment).commit();
Run Code Online (Sandbox Code Playgroud)
这是我的家庭片段:
import android.app.Fragment;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
public class HomeFragment extends Fragment {
public HomeFragment(){}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View rootView = inflater.inflate(R.layout.layout_main_fragment,container, false);
return rootView;
}
}
Run Code Online (Sandbox Code Playgroud)
花了一整个上午已经试图解决这个问题.仍然没有运气.任何帮助都非常感谢.
谢谢
Rag*_*dan 22
您应该使用Fragment支持库.
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentManager;
Run Code Online (Sandbox Code Playgroud)
您还需要使用getSupportFragmentManager(),因为您使用AppCompat的活动必须扩展ActionbarActivity.
FragmentManager fragmentManager = getSupportFragmentManager();
Run Code Online (Sandbox Code Playgroud)
更新:
ActionBarActivity不推荐使用AppCompatActivity来自支持库.不要忘记将支持存储库更新到最新版本.
| 归档时间: |
|
| 查看次数: |
24636 次 |
| 最近记录: |