2

我已经有一个带有一些按钮的 XML 布局,现在我想在相同的布局中添加一个 textview,但是在我的 Java 类中。在“addView”行之前我没有收到任何错误。如果有人能告诉我一种更好的方法来添加到 Java 中预先存在的 XML 布局中,我也将不胜感激。

public class MyActivity extends Activity{
TextView textview;
RelativeLayout layout;


@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
layout=(RelativeLayout)findViewById(R.id.mylayout); 
RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParam(RelativeLayout.LayoutParams.WRAP_CONTENT, RelativeLayout.LayoutParams.WRAP_CONTENT);
params.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM, RelativeLayout.TRUE);
textview=new TextView(this);
textview.setId(16);
textview.setText("Help");
layout.addView(textview, params);
setContentView(layout);
}
4

1 回答 1

2

你的代码应该是这样的,因为你已经有了xml布局,你应该先将内容设置为xml布局,然后将新视图添加到Relativelayout。

public class MyActivity extends Activity{

TextView textview;
RelativeLayout layout;


@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.file_name);
    layout=(RelativeLayout)findViewById(R.id.mylayout); 
    RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParam(RelativeLayout.LayoutParams.WRAP_CONTENT, RelativeLayout.LayoutParams.WRAP_CONTENT);
    params.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM, RelativeLayout.TRUE);
    textview=new TextView(this);
    textview.setId(16);
    textview.setText("Help");
    layout.addView(textview, params);
}
于 2012-09-25T01:44:00.233 回答