android:一个新的GUI问题 - 如何声明viewGroup,没有布局XML文件?

时间:2010-12-04 17:23:44

标签: android user-interface view

在应用程序中,我正在努力,我有自定义视图。 我无法在布局XML文件中声明它,因为我将从包含我的自定义视图实例的活动中使用in,并且我需要访问它(不能覆盖findViewById ...)。

我决定将所有GUI元素声明到Activity中。

但我简直无法前进一步,因为我甚至无法实例化viewGroup ...

这就是我正在尝试的:

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    ViewGroup vg = new ViewGroup(this.getApplicationContext());

    setContentView(vg);

}

我得到'无法实例化ViewGroup'......

有人可以直截了当地举例说明如何声明一个包含视图的viewGroup吗?

该类的文档也不是非常适合初学者...所有的例子都集中在描述布局XML文件中的布局......?

欣赏你的efford,举个例子!

1 个答案:

答案 0 :(得分:7)

[ViewGroup][1]是一个抽象类,你无法实例化它。它定义了一种类,它们是将其他视图放入其中的容器。换句话说,LinearLayout RelativeLayout之类的布局是ViewGroup。因此,你可以这样做:

   @Override
 public void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);

  LinearLayout vg = new LinearLayout(this);
// set the LayoutParams the way you want.
// and add textviews, imageviews, ... here for instance.
  setContentView(vg);

 }

对于LayoutParams,我认为你应该从LayoutParams.Fill_parent开始