2

すでにいくつかのボタンを含むXMLレイアウトがあり、同じレイアウトにテキストビューを追加したいのですが、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レイアウトがあるため、最初にContentを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 に答える