我正在开发一个应用程序,并使用GridLayout.Spec以编程方式设置行和列跨度。但是有一个问题:如果我用api 16在avd上启动这个应用,一切都可以正常工作。如果我在avd上启动它,或者使用api 15方便地启动它,那么row和columnspan不会改变。
从API 14开始就应该可以使用gridLayout.spec,那么问题在哪里?

FrameLayout container = (FrameLayout) widget.getParent();
GridLayout.LayoutParams params = (android.widget.GridLayout.LayoutParams) container
        .getLayoutParams();
(...)
params.columnSpec = GridLayout.spec(widget.getPosition().x, columnSpan);
params.rowSpec = GridLayout.spec(widget.getPosition().y, rowSpan);
container.setLayoutParams(params);

这个小部件是我自己的类。

最佳答案

有一个支持库包含GridLayout,也许您可以尝试使用它。

10-04 23:16
查看更多