1

如何创建类似于 Facebook 消息的圆形 UIView。

它只是一个带有圆角的矩形还是一个中心有一个圆形图像的矩形?

这是图像视图: 在此处输入图像描述 这是自定义单元类的 initWithStyle 代码:

- (id)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier
{
    self = [super initWithStyle:style reuseIdentifier:reuseIdentifier];
    if (self) {
        // Initialization code

        [self.userImage setBackgroundColor:[UIColor orangeColor]];
        [self.userImage.layer setCornerRadius:32.0f];
    }
    return self;
}

但我仍然得到一个矩形图像视图。

4

3 回答 3

6

您必须修改视图图层上的cornerRadius 属性。为了得到一个圆,你应该指定一个角半径等于视图高度/宽度的一半。这是一个基本示例:

UIView *view = [[UIView alloc] initWithFrame:CGRectMake(100.0f, 100.0f, 120.0f, 120.0f)];
[view setBackgroundColor:[UIColor orangeColor]];
[view.layer setCornerRadius:60.0f];
[self.view addSubview:view];
于 2013-08-29T20:35:59.930 回答
0

像这样使用clipToBound:

[cell.yourImage.layer setBorderWidth:2.0f];
[cell.yourImage.layer setBorderColor:[[UIColor blackColor] CGColor]];
[cell.yourImage.layer setShadowRadius:5.0];
[cell.yourImage.layer setShadowOpacity:0.5];
[cell.yourImage.layer setShadowOffset:CGSizeMake(1.0, 0.0)];
[cell.yourImage.layer setShadowColor:[[UIColor blackColor] CGColor]];
[cell.yourImage.layer setCornerRadius:10.0];
cell.yourImage.clipsToBounds = YES;

希望能帮助到你

于 2014-01-29T14:57:35.357 回答
0

我正在使用名称为“viewName”的 UIView,但它可以与 UIImage 一起使用。

    //Define background color
    self.viewName setBackgroundColor:[UIColor colorWithRed:(84.0 / 255.0) green:(198.0 / 255.0) blue:(89.0 / 255.0) alpha:1]];

    //Create circular view
    self.viewName.layer.cornerRadius = cell.statusColor.frame.size.width / 2;
    self.viewName.clipsToBounds = YES;
于 2014-07-05T17:46:41.083 回答