我是否遗漏了一些重要的东西,或者您是否必须为向后移植的类和本机蜂窝片段维护所有片段的单独版本?
-- 尝试在蜂窝上使用后向移植的片段预计会失败并使用本机,而不是因为 ClassCastException 而崩溃
任何帮助将不胜感激。
您应该只需要扩展 Compatibility 插件随附的 JAR 文件中为您提供的 Fragment 类。无需为两个平台维护两个类。
看一下兼容性下载附带的 API Demos 示例,特别是 FragmentLayoutSupport 演示。
顺便说一句,您看到的 ClassCastException 是什么?
对我来说,在这种情况下有助于简单地替换行:
setContentView(R.layout.buttons_fragments);
super.onCreate(bundle);
在
super.onCreate(bundle);
setContentView(R.layout.buttons_fragments);
哦,我的,好吧,我不觉得很傻。
发现了问题——我正在运行模拟器的预览版,我从不记得删除它并用 11 级实例替换它——在最终的 Honeycomb 模拟器中工作正常。