如何交换ViewGroup中两个子项的索引?Android和重新排序ViewGroup的子项
如何在子视图上使用
setLeft
?它似乎没有被定义为类View
的对象。
编辑。
对#2的回答是,setLeft
仅适用于API11。同上setX
。
如何交换ViewGroup中两个子项的索引?Android和重新排序ViewGroup的子项
如何在子视图上使用setLeft
?它似乎没有被定义为类View
的对象。
编辑。
对#2的回答是,setLeft
仅适用于API11。同上setX
。
您可以删除所有的孩子,并按要求的顺序添加。我找不到另一种方式。
恕我直言,重组布局的最佳方式是使用RelativeLayout。
正如我这样做:
// prepare rules
lpTopLeft = new RelativeLayout.LayoutParams(minDimension/5, minDimension/5);
lpTopLeft.setMargins(minDimension/50, minDimension/50, minDimension/50, minDimension/50);
lpTopLeft.addRule(RelativeLayout.ALIGN_PARENT_TOP);
lpTopLeft.addRule(RelativeLayout.ALIGN_PARENT_LEFT);
现在使用准备好的设置:
// rearrange child
bnReset.setLayoutParams(lpTopLeft);
我猜删除的意见和重新充气的布局是唯一的解决办法。也许你可以尝试使用ViewFlipper。我不知道它是否适合你的情况。
最好的解决办法: flexbox-layout by Google
FexboxLayout是一个库项目带来CSS灵活盒布局模块到Android的类似的功能。
然后你可以设置
layout_order
这个属性可以改变孩子的视图的排序是如何布局。默认情况下,子项的显示和排列顺序与它们在布局XML中的显示顺序相同。如果未指定,则将1设置为默认值。
确实。我想重新安排孩子,而不必从头开始扩大整个布局。 – SK9 2012-02-11 23:10:19