簡體   English   中英

UIImageView與UIbutton重疊

[英]UIImageView overlaps UIbutton

我有一個問題,我設計了一個帶有UIButtons的應用程序,下面是一個UIImageView。 我的問題是,當我啟動應用程序時,UIButtons位於UIImageView的下面。 這是我的UIButtons的代碼。

碼:

CALayer *touchedLayer = [myUIButton layer];
CABasicAnimation *wiggleAnimation = [CABasicAnimation animationWithKeyPath:@"transform"];

wiggleAnimation.duration = .1;
wiggleAnimation.repeatCount = 1e100f;
wiggleAnimation.autoreverses = YES;

wiggleAnimation.fromValue = [NSValue valueWithCATransform3D:CATransform3DRotate(touchedLayer.transform, -.15 , 0.0 , -1.0 ,-1.5)];
wiggleAnimation.toValue = [NSValue valueWithCATransform3D:CATransform3DRotate(touchedLayer.transform, -.15 , 0.0 , -1.0 ,-1.5)];

[touchedLayer addAnimation:wiggleAnimation forKey:@"wiggle"];

動畫開始時,我的UIButtons位於下面,而UIImageView則位於UIButtons上方,為什么?


在這里發生了什么,我先在IB中進行了設計,然后放置了UIImageView,然后放置了四個UIButton。 UIImageView只是作為我的四個UIButton的背景。 當應用程序啟動時,所有內容都能正確顯示,但是當我單擊圖標執行代碼時,問題就開始了。

這是我觀察到的,四個UIButton看起來像是閃爍的,並且仍然可以接受單擊的事件。 我的結論是UIButtons仍在UIImageView上方,但是顯示它們時出現問題。

原因可能是什么?您能提出一些我仍然可以實現目標的建議嗎?

謝謝

動畫期間,視圖將保持相同的Z順序。 我假設(因為您沒有包括代碼的那一部分)您已經添加了UIButtonView和UIImageView,以使它們不重疊,並且z順序僅在對象重疊時才變得明顯。 z順序由將子視圖添加到其父視圖的順序確定。

若要使UIButtonViews出現在UIImageView的頂部,請最后添加它們。 您也可以使用[sendSubviewToBack]和[bringSubviewToFront]之類的方法更改順序。

暫無
暫無

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

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