2009-11-18 3 views
5

저는 UITableViewCell을 가지고 있으며 이미지 속성을 사용하여 이미지로 채 웁니다. 그것이 그룹화 된 UITableView에서 처음 일 때, 나는 그것이 표준 둥근 모서리를 갖기를 원한다.이미지로 채워진 UITableViewCell의 둥근 모서리를 복원하는 방법은 무엇입니까?

불행하게도 이미지는 둥근 모서리를 채 웁니다. 투명한 이미지를 사용하지 않고 이미지를 유지할 수있는 방법이 있습니까?

답변

-1

불투명 한 이미지의 모서리가 둥글게되었습니다. 스크린 샷을 찍어 둥근 모서리의 크기를 얻은 다음 이미지의 기초로 사용하십시오.

2


레이어 속성을 사용하여 모든 뷰의 모서리를 프로그래밍 방식으로 반올림 할 수 있습니다. 레이어의 cornerRadius 속성으로 재생하면 원하는 결과를 얻을 수 있습니다. 그냥 모서리의 일부를 반올림하려면

#include <QuartzCore/QuartzCore.h> 

UIImage *myImage = [UIImage imageNamed:@"image.png"]; 
UIImageView *imgView = [[UIImageView alloc] initWithImage:myImage]; 
imgView.layer.cornerRadius = 10.0; 

, 당신은 UIBezierPath의 API를보고 이미지를 마스크 경로를 사용해야합니다. 이것은 테스트되지 않았지만 올바른 방향으로 가리켜 야합니다 :

UIBezierPath *path = [UIBezierPath bezierPathWithRoundedRect:cell.bounds 
              byRoundingCorners:UIRectCornerTopLeft | UIRectCornerTopRight 
               cornerRadii:CGSizeMake(10.0, 10.0)]; 

CAShapeLayer *maskLayer = [CAShapeLayer layer]; 
maskLayer.frame = imageView.frame; 
maskLayer.path = path; 
imageView.layer.mask = maskLayer; 
+4

첫 번째 셀에 대해 오른쪽 위와 왼쪽 모서리에만 둥근 모서리를 넣으 려합니다. 어쨌든 도움이되지 않습니다. – johnl

+0

@johnl 나는 이것이 오래되었다는 것을 알고있다. 그러나 나는 특정 코너를 돌기 만하는 방법을 포함하도록 나의 대답을 업데이트했다. – imnk

관련 문제