OS X에서 View를 맨 위에 배치하는 방법

1328 단어
iOS에서 우리는 View를 맨 위에 놓아야 한다. 우리는 bringSubviewToFront: 방법을 호출하면 된다. 대체적으로 코드는 다음과 같다.
UIView *downView = [[UIView alloc] initWithFrame:CGRectMake(100, 100, 100, 100)];
UIView *upView = [[UIView alloc] initWithFrame:CGRectMake(120, 120, 100, 100)];
downView.backgroundColor = [UIColor redColor];
upView.backgroundColor = [UIColor purpleColor];
[self.view addSubview:downView];
[self.view addSubview:upView];
[self.view bringSubviewToFront:downView];

이렇게 하면downView를 맨 위로 옮길 수 있습니다.
그런데 OS X에는 그런 방법이 없어요. OS X에는 방법이 있어요.
- (void)addSubview:(NSView *)aView positioned:(NSWindowOrderingMode)place relativeTo:(NSView *)otherView

방법 설명:
Inserts a view among the view’s subviews so it’s displayed immediately above or below another view.
참고 문서는 이미 명확하게 말했는데 이 방법은 하나View를 상층이나 하층에 놓을 수 있다.그 중에서 두 번째NSWindowOrderingMode 유형의 매개 변수는 View를 어디에 두는지 선택하는 것이다. 매개 변수는 다음과 같다.
enum {
   NSWindowAbove         =  1,
   NSWindowBelow         = -1,
   NSWindowOut             =  0
};
typedef NSInteger NSWindowOrderingMode;

영어는 매우 직설적이어서 더 이상 말하지 않겠다.
OS X에서 1개View를 최상위 계층에 배치해야 합니다.
- addSubview:positioned:relativeTo:

방법이 충분하다.

좋은 웹페이지 즐겨찾기