1

特定のパラメーターに基づいて動的な数のボタンを使用して、線形レイアウトを動的に作成しようとしています。これまでのところ、コンパイルするコードがいくつかありますが、実行すると何も表示されません。

public void displayMenu() 
{
    LinearLayout lin =  new LinearLayout(CategoryMenu.this);        
    lin.setOrientation(LinearLayout.VERTICAL);
    lin.setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT));

    ArrayList<Button> btnList= new ArrayList<Button>();

    //Test Button
    Button btn1= new Button(this);
    btn1.setText("Dylan");      
    lin.addView(btn1);  

    for (int i =0 ; i < 5; i++){

    btnList.add(new Button(this));
    btnList.get(i).setText("Hello:"+i);     
    lin.addView(btnList.get(i));
    Log.i("CategoryMenu","Adding btn to view");
    }       
}

私は間違って何をしていますか? ここでばかげたことを見逃していると確信しています。

4

5 に答える 5

0

linもレイアウトに追加する必要があります。現在、Linearlayout を作成したばかりですが、どのレイアウトにもアタッチしていません。

于 2013-07-23T08:21:14.893 に答える
0

lin.addView(btn1);

Button の layoutparams を次のように定義する必要があります。

 // Defining the layout parameters of the Button
        LinearLayout.LayoutParams lp = new LinearLayout.LayoutParams(
            LinearLayout.LayoutParams.FILL_PARENT,
            LinearLayout.LayoutParams.WRAP_CONTENT);

        // Setting the parameters on the Button
        tv.setLayoutParams(lp);
于 2013-07-23T08:08:26.167 に答える