Hãy nhìn vào hình ảnh sau:Làm thế nào để loại bỏ các cạnh hình chữ nhật sắc nét khỏi điều khiển UIButton?
Như bạn có thể thấy các cạnh là hình chữ nhật sắc nét và họ đang sắp ra của nút góc tròn. Làm thế nào tôi có thể không hiển thị các cạnh và chỉ hiển thị các nút tròn?
UPDATE (Solution):
tôi đã sử dụng đoạn mã sau để đạt được các góc tròn:
UIBezierPath *maskPath = [UIBezierPath bezierPathWithRoundedRect:self.stopButton.bounds
byRoundingCorners:UIRectCornerAllCorners
cornerRadii:CGSizeMake(12.0, 12.0)];
// Create the shape layer and set its path
CAShapeLayer *maskLayer = [CAShapeLayer layer];
maskLayer.frame = self.stopButton.bounds;
maskLayer.path = maskPath.CGPath;
// Set the newly created shape layer as the mask for the image view's layer
self.stopButton.layer.mask = maskLayer;
MỚI VẤN ĐỀ:
Mã này mang lại cho tôi những lỗi trên startButtonRound.layer. cornerRadius line.
UIButton *roundStartButton = [UIButton buttonWithType:UIButtonTypeRoundedRect];
roundStartButton.frame = CGRectMake(10, 10, 100, 20);
[roundStartButton setBackgroundImage:[UIImage imageNamed:@"green_gradient.jpg"] forState:UIControlStateNormal];
roundStartButton.layer.cornerRadius = 12.0;
UIBarButtonItem *startButton = [[UIBarButtonItem alloc] initWithCustomView:roundStartButton];
Tôi đã thử [nút lớp] setCornerRadius: 5.0f]; nhưng nó không có ảnh hưởng gì đến nút. – azamsharp
Bạn có thể cần đặt MasksToBounds thành có để có được lớp để cắt nội dung của nó thành các góc được làm tròn. –
UIButton có phải được khai báo là IBOutlet để cornerRadius hoạt động không? Xem vấn đề cập nhật bài đăng ban đầu. – azamsharp