Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/200.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java setX()、setTranslationX()、setY()和setTranslationY()_Java_Android_Android Layout - Fatal编程技术网

Java setX()、setTranslationX()、setY()和setTranslationY()

Java setX()、setTranslationX()、setY()和setTranslationY(),java,android,android-layout,Java,Android,Android Layout,setX()、setY()和setTranslationX()、setTranslationY()之间有什么区别?他们是在现有坐标上设置偏移还是设置绝对位置 如果他们正在设置绝对坐标,这不会与父布局的约束冲突吗 比如说我们有 |视图1 |视图2 |视图3 | 在线性布局中,如果我们执行view2.setX(0)或视图2.setTranslationX(0)视图2会与视图1重叠还是将视图1推到一边 同样,如果我们有一个RelativeLayout的子项,它的alignParentBottom设置为

setX()、setY()和setTranslationX()、setTranslationY()之间有什么区别?他们是在现有坐标上设置偏移还是设置绝对位置

如果他们正在设置绝对坐标,这不会与父布局的约束冲突吗

比如说我们有
|视图1 |视图2 |视图3 |

在线性布局中,如果我们执行
view2.setX(0)
视图2.setTranslationX(0)视图2会与视图1重叠还是将视图1推到一边

同样,如果我们有一个RelativeLayout的子项,它的alignParentBottom设置为true,但我们在代码中将该子项的y坐标手动设置为0,该怎么办。哪个布局规则获胜

基本上,我对手动坐标如何影响容器的布局规则以及平移和X/Y之间的差异感到困惑。如果这看起来微不足道,我提前表示歉意,但我是来自iOS的Android新手。

来自文档,是:

设置此视图相对于其左侧位置的水平位置。这将有效地定位对象的后期布局,以及对象的布局所放置的位置

是:

设置此视图的可视x位置(以像素为单位)。这相当于将translationX属性设置为传入的x值与当前left属性之间的差值


因此,您可以将
setTranlStatix
视为一个相对偏移:将3个像素移到正常位置的左侧。而
setX
是一个固定的位置:移动您必须移动的任何东西,以便最终在坐标X处绘制。

setX/Y
从0,0屏幕设置绝对位置。
setTranlStationX/Y
从布局中视图的默认位置设置位置


设置
X
Y
设置视图相对于父视图左上角的位置(而不是屏幕上的绝对位置)。设置平移会相对于父视图的布局位置移动视图。(父视图将视图布置在
(左,上)


当前的左、上、右、下属性通常由父布局设置吗?或者setX setY etc是否覆盖父级的值?左/上/右/下属性由布局设置。像
setTranslationX
这样的东西会根据这些属性调整小部件的实际绘制位置。