在Android中替代AbsoluteLayout?

Joe*_*yCK 42 android

如果弃用AbsoluteLayout,我可以使用什么而不是它?

我已经完成了一个使用AbsoluteLayout的应用程序,但它不适用于不同的屏幕分辨率.我使用是因为我可以设置按钮的X和Y位置.我可以使用其他布局设置按钮的位置吗?

Kyl*_*yle 23

您可以使用此处所述的RelativeLayouts:设置视图的绝对位置

  • RelativeLayout的一个大问题是,如果你嵌套它们,OnMeasure的调用次数会在每一步都加倍.因此,如果您需要深层次结构,这不是一个好的答案. (3认同)

Gan*_*nna 11

使用RelativeLayout并设置左右边距

RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT);
lp.leftMargin = x;
lp.topMargin =  y;
Run Code Online (Sandbox Code Playgroud)


flu*_*ffy 6

考虑使用FrameLayout.如果您将孩子的重力设置为TOP|LEFT那么您可以使用leftMargintopMargin作为位置.作为奖励,您可以通过改变重力获得一些其他有用的定位机制.