我有以下佈局。 bringSubview(toFront :)似乎不工作
我想要實現的是使黃色子視圖成爲圓形並將其帶到前面。我試過self.view.bringSubview(toFront:yellowView)
,但似乎沒有按照我的預期工作。我怎樣才能解決這個問題?編輯 對不起,缺少細節
所以在根視圖上,我有兩個子視圖,頂部和底部。 現在底部部分是空的,但頂部部分包含一個與頂部相同大小的imageview和一個圓UIView。
所以我想要的是把底部的圓圈UIView放在前面。
我有以下佈局。 bringSubview(toFront :)似乎不工作
我想要實現的是使黃色子視圖成爲圓形並將其帶到前面。我試過self.view.bringSubview(toFront:yellowView)
,但似乎沒有按照我的預期工作。我怎樣才能解決這個問題?編輯 對不起,缺少細節
所以在根視圖上,我有兩個子視圖,頂部和底部。 現在底部部分是空的,但頂部部分包含一個與頂部相同大小的imageview和一個圓UIView。
所以我想要的是把底部的圓圈UIView放在前面。
您的問題是圓UIView
不是根視圖的孩子,但在頂視圖的孩子。爲了使圓圈出現在底部視圖的前面,請重新排列您的視圖層次結構。
使圓圈UIView
成爲根視圖的子項。然後,您可以使用所顯示的代碼將其帶到其他視圖的前面。實際上,如果您將圓形視圖UIView
作爲根視圖的最後一個子視圖,它將出現在根視圖的所有子視圖的前面。
需要的視圖層次:
Root View
- Top View
- UIImageView
- Bottom View
- Circle View
在文檔大綱,拖動圈查看和拖放到根查看。
設置clipBounds屬性爲false的UIImageView:
self.imageView.clipsToBounds = false
這不工作?在問題中我沒有提到的一件事是容器視圖包含圖像視圖和圓形視圖。我試過容器視圖和圖像視圖設置clipsToBounds錯誤,它不起作用。 – eChung00
如果你circleView
和imageView
是containerView
subview
那就試試這個代碼。
self.containerView.bringSubview(toFront:yellowView)
你能看看我編輯過的原始問題嗎?謝謝。 – eChung00
您的黃色視圖是視圖還是imageView的子視圖? – vacawama
@vacawama有一個包含圖像視圖和圓形視圖的容器視圖。我只是將圖像視圖設置爲與其父視圖相同的大小。 – eChung00
您需要提供更多詳細信息......生成Circle的代碼是什麼?什麼是視圖層次結構?圓圈,黃色方塊和圖像是否查看單個UIView的所有子視圖?還是所有的個人意見?什麼是灰色的矩形?另一種看法?如果你沒有解釋你有什麼...... – DonMag