2011-02-28 8 views
1

iPhone 앱을 작성 중이며 iOS SDK를 처음 사용합니다. 내가 성취하려고하는 것을 열렬히 보여줍니다. 화면 상단에 이미지가 깜박 거리고 싶습니다 (이미 내 눈앞에있는 모든 것의 맨 위에 있음). 이 작업을 잘 수행 할 수 있지만 반투명으로 쿼츠 라이브러리를 사용해야한다고 가정합니다.iOS Quartz UIView 통합

UIView 클래스에서이 두 함수를 구현했습니다. 이 코드는 정상적으로 작동하지만 이미지 주위에 검정색 배경을 만듭니다. 주위에 상자 배경이없는 이미지 만 원합니다. 백그라운드를 변경하거나 제거하는데 사용할 수있는 CGContext 함수가 있습니까? drawRect를 호출하지 않아야합니까? 잘못된 방향으로 완전히 가고 있습니까? 누구에게 더 많은 정보가 필요한지 알려주세요. 감사.

// Implements UIView 

-(void)drawInContextCGContextRef)context{ 
CGRect imageRect; 
imageRect.origin = CGPointMake(8.0, 8.0); 
imageRect.size = CGSizeMake(64.0, 64.0); 

CGContextSetAlpha(context, 0.5); 
CGContextSetBlendMode(context, kCGBlendModeNormal); 
    CGContextDrawImage(context, imageRect, image); 
} 

-(void)drawRectCGRect)rect 
{ 
[self drawInContext:UIGraphicsGetCurrentContext()]; 
} 

다음은보기 컨트롤러에서 호출하는 코드입니다.

[quartzUIView drawRect:CGRectMake(50, 50, 150, 250)]; 
[self.view addSubview:quartzUIView]; 

답변

2

나는 그것을 복잡하게 생각합니다 ... 낮은 수준으로 갈 필요가 없습니다.

UIImageView를 사용할 수 있습니다. 불투명도를 원하는대로 (예 : 0.5f) 설정하고 불투명 속성을 NO로 설정하십시오.

+0

이것은 내가 원하는 답변 유형입니다. 나는 UIImageView에서 alpha 속성을 찾았고 찾을 수 없다고 맹세했습니다. 엄청 고마워! – Zip184

관련 문제