2015-07-14 2 views
5

Кто-нибудь знает, как создать UITableView с изогнутым фреймом, например, загрузки MacOS (в панели Dock) на iOS?Как создать таблицу с изогнутой рамкой?

enter image description here

Я пытался использовать для этого UIBezierPath класса, но unfortunally мне не удалось. Например, я сделал это:

_tableView = [[TVCurveTableView alloc] initWithFrame:CGRectMake(10, self.view.frame.size.height - 130, 70, 160)]; 
UIBezierPath *bezierPath = [[UIBezierPath alloc]init]; 
    [bezierPath moveToPoint:CGPointMake(10, self.view.frame.size.height - 10)]; 
    [bezierPath addLineToPoint:CGPointMake(40, (self.view.frame.size.height-10) - 160)]; 
    [bezierPath addLineToPoint:CGPointMake(110, (self.view.frame.size.height-10) - 160)]; 
    [bezierPath addLineToPoint:CGPointMake(80, (self.view.frame.size.height-10))]; 
    [bezierPath addLineToPoint:CGPointMake(10, (self.view.frame.size.height-10))]; 
    [bezierPath closePath]; 
    bezierPath.lineWidth = 2; 
CAShapeLayer *shapeView = [[CAShapeLayer alloc] init]; 
    [shapeView setPath:bezierPath.CGPath]; 
    shapeView.strokeColor = [UIColor redColor].CGColor; 
[_tableView.layer addSublayer:shapeView]; 

Возможно, у вас есть идеи?

+1

вы можете установить фоновое изображение в виде искривленного изображения для получения выглядеть, как вы хотите –

ответ

2

My COBezierTableView делает что-то подобное, хотя и не с наклоном ячеек. Было бы неплохо, если бы у вас был вариант, так что, возможно, я займусь этим. Поразите дерево также, чтобы доставить pullrequest самостоятельно, если вы найдете решение. ;-)

https://github.com/knutigro/COBezierTableView

+0

О, спасибо! Я постараюсь использовать его! – rusBogun

+0

Извините, а у вас есть ваш COBezierTableView, написанный Objective-C? – rusBogun

+0

Нет, не сейчас. Я сделал это как упражнение в изучении Свифта, но его не так много кода, поэтому не стоит его переводить. – knutigro

 Смежные вопросы

  • Нет связанных вопросов^_^