Как получить закругленные углы только в нижней части размытия с четким цветом на iOS?

Я помещаю размытие в UITableViewCell. Таким образом, цвет фона ячейки установлен на чистый цвет. Но я хочу, чтобы конкретные углы тоже были скруглены.

Я наткнулся на это решение для закругления углов.

  1. Создайте CAShapeLayer.
  2. Создайте UIBezierPath с определенными углами и cornerRadii.
  3. Примените его к CAShapeLayer и добавьте в качестве маски целевого слоя представления.

Но это работает только тогда, когда представление имеет цвет фона. Я просто хочу, чтобы определенные углы были закруглены четким цветом.

Заранее спасибо.


person kruttinangopal    schedule 09.08.2016    source источник
comment
Попробуйте сделать угол, tableView.layer.cornerRadius = 10 tableView.layer.masksToBounds = true   -  person Chandan    schedule 09.08.2016
comment
@ChandanPrajapati Спасибо за ваше предложение. Но он закруглит все углы. Но я хочу, чтобы закруглялись только определенные углы (например, bottomLeft и bottomRight).   -  person kruttinangopal    schedule 09.08.2016
comment
Перейдите по этой ссылке попробуйте ссылку   -  person Chandan    schedule 09.08.2016
comment
@ChandanPrajapati Еще раз спасибо. Я пробовал это решение. Но когда я делаю это на UItableviewCell, добавленный эффект размытия пропадает. Мне нужен этот эффект размытия, а также определенные закругленные углы, такие как уведомления на экране блокировки.   -  person kruttinangopal    schedule 09.08.2016


Ответы (1)


Попробуй это

UIBezierPath *maskPath = [UIBezierPath bezierPathWithRoundedRect:self.viewOutlet.bounds byRoundingCorners:(UIRectCornerTopLeft | UIRectCornerBottomLeft | UIRectCornerBottomRight) cornerRadii:CGSizeMake(10.0, 10.0)];

CAShapeLayer *maskLayer = [[CAShapeLayer alloc] init];
maskLayer.frame = self.view.bounds;
maskLayer.path  = maskPath.CGPath;
self.viewOutlet.layer.mask = maskLayer;  

введите описание изображения здесь

person gurmandeep    schedule 09.08.2016