텍스트 필드와 베젤 버튼이있는 창이 있습니다. 경계가 없으며 투명하지만 문제는 모든 창에서 재현됩니다.코코아 창문의 둥근 모서리 그라디언트 배경
해당 창의 내용보기는 IB에서 창 배경을 그리는 사용자 지정 클래스로 설정됩니다.
을 무슨 일이야 :
- (void)drawRect:(NSRect)dirtyRect
{
[NSGraphicsContext saveGraphicsState];
float cornerRadius = 10;
NSBezierPath *path = [NSBezierPath bezierPathWithRoundedRect:self.bounds xRadius:cornerRadius yRadius:cornerRadius];
[path setClip];
NSGradient *gradient = [[NSGradient alloc] initWithColorsAndLocations:
[NSColor colorWithCalibratedRed:0.96f green:0.96f blue:0.96f alpha:1.00f], 0.0f,
[NSColor colorWithCalibratedRed:0.84f green:0.84f blue:0.84f alpha:1.00f], 1.0f,
nil];
[gradient drawInRect:self.bounds angle:270];
[NSGraphicsContext restoreGraphicsState];
}
그것은 사라지고 개체 또는 창의로 변경 텍스트 필드의 배경처럼, 정말 이상한 유물 원인 : 여기
코드인가? 나는 그것을 고립 시키려고 노력했다. 나는이 "그래픽 컨텍스트 상태를 저장하는 것"(나는 정확하게 이해할 지 모르겠다)으로 놀아 왔지만, 문제는 계속된다.XCode 4.4, SDK가 10.7 (내 OS이기도 함)이며 배포 대상은 10.6입니다. 그것은 아마 문제가되지 않습니다,하지만 나는 과거에 비슷한 것을 해왔고 그런 이상한 문제가 없었습니다.
사람이 까다로운 문제처럼 보입니다. – loyalflow
예. 예, 그렇습니다. – radex