2009-05-19 7 views
3

iPhone 용 UIView의 두 레이어를 오버레이하는 적절한 방법은 무엇입니까? 언더 레이보기는 버튼을 누를 때까지 활성화되어 있어야하며, 다른 UIView는 투명하게 모든 것을 으로 처리해야합니다. 모달 뷰 컨트롤러를 찾았지만 단순히 UI 뷰를 교환하지만 오버레이하지는 않습니다.UIView 오버레이

미리 감사드립니다.

크리스

답변

5

기존 뷰에 뷰를 추가 할 [existingView addSubview:newView];를 사용해야합니다. newView가 existingView 위에 나타납니다. 그래서 개념적으로,이 같은 방법을 호출하는 IBAction를에 연결, existingView에 버튼을 만들 것입니다 :

CGRect newSize = CGRectMake(0.0f ,0.0f, 320.f, 400.0f); 
UIView *newView = [[UIView alloc] initWithFrame:newSize]; 
[existingView addSubview:newView]; 
[newView release]; 

이것은 existingView의 상단에 newView를 배치합니다.

+0

작은 오타 [existingView addSubview : newView]; – Chris

2

UIView의

투명 오버레이 간단한 3 라인 ARC 호환되는 다음
_overlayView = [[UIView alloc] initWithFrame:[UIScreen mainScreen].bounds]; 
    _overlayView.backgroundColor = [UIColor colorWithRed:0 green:0 blue:0 alpha:0.5]; 
    [self.view addSubview:_overlayView];