[英]How to get coordinate of view in LinearLayout
我有一個LinearLayout
,可以有很多子視圖。 子視圖以編程方式添加。
i need this distance
<---------------------->
--------------------------------wrapper ln----------------------------------
- ... cv4 cv3 cv2 cv1 -
----------------------------------------------------------------------------
包裝器ln的引力設置為正確,因此每個添加的子視圖均正確放置。
例如,當我單擊“ cv4”時,我需要從包裝線性布局的右側獲取距離。
子視圖為LinearLayout
類型。
您可以在父級LinearLayout上調用getWidth()
,在動態添加的視圖上調用getLeft()
,以從右側獲取位置:
parent.getWidth() - c4.getLeft();
您還可以連接到OnGlobalLayoutListener
以便每次更改尺寸時都可以獲取坐標:
parent.getViewTreeObserver().addOnGlobalLayoutListener(
new ViewTreeObserver.OnGlobalLayoutListener() {
public void onGlobalLayout() {
int right = parent.getWidth() - c4.getLeft();
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.