我正在尝试以编程方式添加几个从TextViews扩展到RelativeLayout的Tiles。
我的代码如下。
RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
for (int i = 0; i < characters.length; i++) {
Tile tile = new Tile(this);
tile.setText(Character.toString(characters[i]));
tile.setId(i);
if (i != 0) {
params.addRule(RelativeLayout.RIGHT_OF, i - 1);
}
_display.addView(tile, params);
}因此,我创建了一个名为params的新的LayoutParams实例类,并添加了一条规则来将每个瓦片与前一个瓦片的右侧对齐。当我运行这个应用程序时,看起来这些磁贴相互重叠。有什么建议吗?
发布于 2011-02-16 03:02:41
您不能对每个视图重用相同的LayoutParams对象。每次都需要创建一个新的。
https://stackoverflow.com/questions/5007956
复制相似问题