1

我尝试为 pre-honeycomb android 设备使用 Android 兼容性库(或现在称为支持库)v4。我知道,我应该使用 FragmentActivity 类,而不是使用 Fragment 类。根据我能找到的所有教程,我可以像在 Fragment 类中一样使用onCreateView方法:

public View onCreateView (LayoutInflater inflater, ViewGroup 容器, Bundle savedInstanceState)

但是,FragmentActivity 中的 onCreateView 方法似乎有所不同。我继承的一个是:

public View onCreateView(字符串名称、上下文上下文、AttributeSet attrs)

这个版本其实是在 FragmentActivity 类的 Android 参考中列出的。
似乎我能找到的所有教程都没有说明这种差异,并且都在 Fragment 类中调用了那个。我在这里误会了我应该能够以某种方式调用 Fragment 类版本的 onCreateView 吗?

4

4 回答 4

6

我认为这是错误的:

我知道,我应该使用 FragmentActivity 类,而不是使用 Fragment 类。

您应该使用 Activity 类的 FragmentActivity 类。在 FragmentAcivity 类中,覆盖 onCreate 方法就足够了。

于 2012-05-08T12:14:09.647 回答
4

FragmentActivity 和 Activity 是一样的。FragmentActivity 用于版本(低于 4),使用 android.support.v4.jar 支持 Fragment。对于从 4 开始的版本,没有 FragmentActivity..你可以检查出来。FragmentActivity 用于调用显示 Fragments..所以当你开发 FragmentView 时你不应该扩展 FragmentActivity。Fragment 是 FragmentActivity.u 的一部分,可以有更多的 Fragment。对于你的疑问:检查这个 http://developer.android.com/reference/android/app/Activity.html#onCreateView%28android.view.View,%20java.lang.String,%20android.content.Context,%20android .util.AttributeSet%29

于 2012-05-08T12:56:33.133 回答
2

你已经有点改变了。片段仍然是片段。Activity 变成 FragmentActivity。查看 Android 兼容性库附带的示例代码。特别是,请参阅FragmentLayoutSupport.java

于 2012-05-08T12:13:12.433 回答
0

简单地删除你的 gen 文件夹...为我工作

于 2013-11-07T13:47:51.070 回答