2014-06-10 1 views
0

내 아래에서 하위 뷰를 추가 내가 좋아하는 것 secondUIImageSubview가)와 첫 번째 서브 뷰 아래에 넣어 :나는 내 기본보기에 하위 뷰를 추가하고, 아이폰 OS 응용 프로그램에서 다른 서브 뷰

[self insertSubview:secondUIImageSubview belowSubview:self]; 

내 문제는 내가 아래에있을 때는 두 번째 서브 뷰는 첫번째 서브 뷰 위에 표시되는 것입니다. 어떻게 달성 할 수 있습니까? 감사.

+0

귀하의 질문은 Cocoa와 어떤 관련이 있습니까? –

+0

iOS 개발자 용 Objective-C/Cocoa 코드입니다. –

+0

그 용어를 사용하기 전에 Cocoa가 무엇인지 알아내는 것이 좋습니다. –

답변

1

트릭을해야합니다.

[self.superview insertSubview:secondUIImageSubview atIndex:0]; 
+0

그 덕분에, 고마워! –

0

insertSubview : belowSubview를 사용할 때 : 하위 뷰는 특정 객체가 관리하는 다른 하위 뷰와 관련하여 배치합니다.

[self insertSubview:secondUIImageSubview belowSubview:self];

훨씬 이해가되지 않습니다. self는 UIView (또는 하위 클래스)이지만 하위 뷰로는 절대로 관리해서는 안됩니다. 따라서

[self insertSubview:secondUIImageSubview belowSubview:firstUIImageSubview]; 

아마도 당신이 원하는 것입니다. 하지만이 방법은 첫 번째 UmageSubview를 Z- 색인 (화면의 깊이) 측면에서만 secondUmageSubview에 배치한다는 점을 기억하십시오. firstUIImageSubview (IE는 XY 좌표) 아래에 물리적으로 배치하려면 하위 뷰의 프레임을 사용하거나 대신 원점을 설정해야합니다 (예 : 중심점 또는 고정 점을 조작하여).

+0

감사합니다. 제가 아래에서 의미하는 바는 Z- 인덱스입니다. 하지만 당신의 제안으로, 어떻게이 코드 조각이 firstUIImageSubview 클래스 안에 있다는 것을 알면 'firstUIImageSubview'를 찾을 수 있습니까? –

+0

secondUIImageSubview를 첫 번째로 관리하려면 해당 코드 부분 만 firstUIImageSubview에 있어야합니다. 이 경우 깊이가 중요하지 않아야합니다. 왜냐하면 초가 첫 번째 부분이기 때문입니다. 당신은 View Controller에 의해 관리되는 두 subview를 가지고있는 것처럼 보입니다. ViewController는 두 가지 하위 뷰에 대한 참조를 가지며 깊이있는 방식으로 설정할 수 있습니다. – Literphor

+0

@LaurentCrivello와 BayPhillip의 솔루션이 작동하는 동안. 그것은 당신에게 깊이에 대한 실제적인 통제를 제공하지 못합니다. 디자인을 그대로 유지하려고한다면 [self.superview insertSubview : secondUIImageSubview belowSubview : self]를 권하고 싶습니다.하지만 디자인을 다시 생각해보고 뷰 계층 구조와 객체 지향 디자인이 실제로 어떻게 이루어져야하는지 더 좋은 아이디어를 얻는 것이 좋습니다. 작업. 나중에 많은 문제를 해결할 수 있습니다. – Literphor

관련 문제