2 markdowneide markdowneide 于 2013.05.16 15:58 提问

给 ViewPager 中的 fragment 添加空的构造函数

我想创建了一个布局,类似 Google play's。我使用 ViewPager ,需要 fragment。我查了一些资料说一个 fragment 需要一个空的构造函数,但是事例中在 developer.android.com 不包含一个构造函数。
事例代码如下:

public static class DemoObjectFragment extends Fragment {
    public static final String ARG_OBJECT = "object";

    @Override
    public View onCreateView(LayoutInflater inflater,
            ViewGroup container, Bundle savedInstanceState) {
        // The last two arguments ensure LayoutParams are inflated
        // properly.
        View rootView = inflater.inflate(
                R.layout.fragment_collection_object, container, false);
        Bundle args = getArguments();
        ((TextView) rootView.findViewById(android.R.id.text1)).setText(
                Integer.toString(args.getInt(ARG_OBJECT)));
        return rootView;
    }
}

需要在一个fragment中包含一个构造函数吗?或者直接省去构造函数?

2个回答

LiDaming_and
LiDaming_and   2013.05.17 10:44
已采纳

Java 编译器会在没有构造函数的类中自动添加一个默认的无参构造函数(就是问题中提到的 "empty constructor")
下面的空类:

public class A {
}

等同于下面这个空的无参构造函数:

public class A {

    public A() {
    }
  }

你要明确的添加一个无参构造函数当包含另一个只有一个或多个参数的构造函数,因为这样的话,编辑器就不能添加。

cj6585256
cj6585256   2013.05.20 17:49

默认superClass就有一个无参的构造函数

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!