如何扩展Fragment并让子类与ListFragment一起扩展我的基类?

时间:2013-07-19 01:25:01

标签: java android

为了澄清我的问题,我希望有一个扩展Fragment的基类,例如:

public class MyFragment extends Fragment
{
    @Override
    public void onAttach(Activity activity)
    {
        //common work
    }
}

我有扩展MyFragment的子类,但我也想让子类获得ListFragment的功能,它已经扩展了Fragment。

如何在不创建2个基类的情况下完成此操作,一个用于简单的Fragment,另一个用于ListFragment(可能还有三个用于DialogFragment),或者必须查看ListFragment(和DialogFragment)的源以便创建我自己的扩展MyFragment的子类?

3 个答案:

答案 0 :(得分:1)

你不能。一个类只能有一个基类。

你最好的方法是忘记ListFragment。无论如何,它并没有做很多事情。

答案 1 :(得分:0)

他们是这样做的一种方法,创建一个ListFragmentpublic class SecondFragment extends ListFragment),然后将其称为基础片段MyFragment中的子片段。这是在frgment内部创建片段的方法(frament的嵌套)。请参阅这些链接.. http://developer.android.com/reference/android/app/Fragment.htmlhttp://developer.android.com/about/versions/android-4.2.html#NestedFragments

答案 2 :(得分:0)

ListFragment只提供一些样板代码,如果你真的想拥有它的功能,可以查看它的source code以供参考,并在你的MyFragment中实现类似的功能。这是Android上开发的一项优势,可以检查平台源代码,看看它是如何做的。