我想设定我的观点。 有方法setX / setY或setLeft / setTop但这些方法自API 11起可用。 为了在其他API中拥有这个功能,有什么解决方案。
答案 0 :(得分:2)
这取决于您使用的布局。使用RelativeLayout
,您可以执行以下操作:
RelativeLayout.LayoutParams layoutParams = (RelativeLayout.LayoutParams)child.getLayoutParams();
layoutParams.leftMargin = x;
layoutParams.topMargin = y;
child.setLayoutParams(layoutParams);
答案 1 :(得分:0)
尝试覆盖onDraw方法并将x / y转换为你的画布吗?
@Override
protected function onDraw(Canvas c){
c.save();
c.translate(x,y);
c.restore();
}
我认为这不是一个好的解决方案,但它是我唯一的想法。
答案 2 :(得分:0)
我唯一能够“开箱即用”的工作就是设置视图填充。
View.setPadding(left, top, right, bottom);
这不是最好的解决方案,但它适用于早于11的API,并会模拟以X,Y方式移动视图。
希望有所帮助!