簡體   English   中英

Android設置視圖位置 - setY vs setTop

[英]Android set view position - setY vs setTop

我打算以編程方式移動按鈕的位置。 按鈕處於相對布局中。 我研究過並發現我們可以使用.setY().setTop() 它們看起來應該是一樣的。

但在我的情況下, .setTop()根本不會改變位置,而.setY()只能起作用。 我不確定我做了什么誤會,但對我來說這很奇怪。

有沒有人可以正確解釋setY() vs setTop() 有什么不同?

這是layout.xml

<RelativeLayout 
    android:layout_width="match_parent"
    android:layout_height="match_parent">
    <Button
       android:layout_width="match_parent"
       android:layout_height="40dp"
       android:layout_marginLeft="10dp"
       android:layout_marginRight="10dp"/>
</RelativeLayout>

之間的主要區別setY()setTop()setY()設置頂部相對於可視區域的視圖的偏移,而setTop()設置頂部相對於其父視圖的偏移量。

來自Android文檔

塞蒂()

設置此視圖的視覺y位置(以像素為單位)。 這相當於將translationY屬性設置為傳入的y值與當前top屬性之間的差異。

機頂盒()

設置此視圖相對於其父級的頂部位置。

您可以注意到setTop()setY()不同,它沒有效果。 原因是layout()正在改變字段mTop 查看更改的mTop的最簡單方法是設置上邊距。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM