1

我正在做一个 Titanium 模块(只是 Android 代码),我需要在视图中显示一个按钮,所以没有 Activity 也没有 xml 布局。我有以下代码在我的视图中添加按钮:

public class MyView extends ViewGroup {
 public MyView(Context context) {
  super(context);
  ...
  Button b=new Button(context);
  b.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT, 
                LayoutParams.WRAP_CONTENT)); 
  b.setText("Some Text");
  this.addView(b);
 }
}

在 StackOverflow 中搜索,这段代码应该可以工作......但该按钮从未显示。如何将按钮添加到视图或视图组?

编辑添加 onLayout() 方法:

@Override
protected void onLayout(boolean changed, int l, int t, int r, int b) {
     LinearLayout l1=new LinearLayout(_context);
     l1.setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT,LayoutParams.FILL_PARENT));
     l1.setOrientation(LinearLayout.VERTICAL);
     Button b1=new Button(_context);
     b1.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT)); 
     b1.setText("Button");
     l1.addView(b1);

     this.addView(l1);
}

谢谢你的帮助。-

4

1 回答 1

0

ViewGroup是抽象类。而且我认为您错误地实施了它的一些方法。尝试使用任何具体的布局,例如LinearLayout,而不是。

于 2012-10-17T12:32:41.487 回答