如何避免LinearLayout上的重叠按钮?

时间:2012-04-20 19:17:11

标签: java android android-linearlayout

我知道如何使用预定义的XML创建自定义对话框。

我想动态创建一个带有LinearLayout和按钮的对话框。

我尝试了下面的代码,但似乎我的按钮重叠了。我该如何防止这种情况?

public void createMenu(MenuItem item){

    Dialog menuDiag = new Dialog(Home.this);
    menuDiag.setTitle("Browse");    
    LinearLayout linearLayout = new LinearLayout(menuDiag.getContext());
    LinearLayout.LayoutParams  params;


    Button button;

    categoryList = parse.getPlayList(); 

    for(int i=0;i<categoryList.size();i++){     
        params = new LinearLayout.LayoutParams(
                LinearLayout.LayoutParams.WRAP_CONTENT,
                LinearLayout.LayoutParams.WRAP_CONTENT);

        button =  new Button(menuDiag.getContext());
        button.setText(categoryList.get(i).getTitle());
        button.setBackgroundResource(iconCheck(categoryList.get(i).getTitle()));
        button.setLayoutParams(params);

        menuDiag.addContentView(button, params);


    }

    params = new LinearLayout.LayoutParams(
            LinearLayout.LayoutParams.WRAP_CONTENT,
            LinearLayout.LayoutParams.WRAP_CONTENT);

    menuDiag.addContentView(linearLayout, params);
    menuDiag.show();

}

1 个答案:

答案 0 :(得分:1)

尝试将LinearLayout的方向设置为垂直,这样它会自动置于第一个View

下方

如果您使用的是LinearLayout,请使用

yourLayout.setOrientation(LinearLayout.VERTICAL);

设置方向