为什么在使用setLayoutParams时FrameLayout不显示?

时间:2020-01-16 16:07:22

标签: java android

我正在尝试使用FrameLayout在表中的另一个视图上方放置视图(每行2个框架布局),但是我需要向其添加一些参数(边距,宽度和高度)。问题在于,向其添加参数会阻止其显示。 对于该示例,我只在其中放置了1个视图,但这仅仅是因为我试图简化它以便发布。

在示例中使用代码时,它不会显示FrameLayout,但是如果我删除frameLayout.setLayoutParams(frameParams);行,则无法选择其大小和边距大小

TableRow row = new TableRow(this);
        row.setLayoutParams(new TableRow.LayoutParams(TableRow.LayoutParams.MATCH_PARENT, TableRow.LayoutParams.MATCH_PARENT));
        FrameLayout frameLayout = new FrameLayout(this);
        Button button = new Button(this);
        button.setWidth(LinearLayout.LayoutParams.MATCH_PARENT);
        button.setHeight(LinearLayout.LayoutParams.MATCH_PARENT);
        button.setText("Button2");
        FrameLayout.LayoutParams frameParams = new FrameLayout.LayoutParams(200,100);
        frameParams.setMargins(5,5,5,5);
        frameLayout.setLayoutParams(frameParams);
        frameLayout.addView(button);
        row.addView(frameLayout);
        tableLayout.addView(row);

如何解决此问题,或者应该使用其他类型的布局/容器代替FrameLayout?

0 个答案:

没有答案
相关问题