2012-01-02 2 views
3

Я просто понял, что если я использую этот код, чтобы закруглить только верхние 2 ребра моего UITableView:UITableView отключен при прокрутке?

UIBezierPath *maskPath = [UIBezierPath bezierPathWithRoundedRect:thetableView.bounds 
                byRoundingCorners:UIRectCornerTopLeft | UIRectCornerTopRight 
                 cornerRadii:CGSizeMake(10.0, 10.0)]; 
    // Create the shape layer and set its path 
    CAShapeLayer *maskLayer = [CAShapeLayer layer]; 
    maskLayer.frame = thetableView.bounds; 
    maskLayer.path = maskPath.CGPath; 
    thetableView.layer.mask = maskLayer; 

Мое содержание TableView получит отрезать, если я прокрутите вниз к чему-либо, что было ниже кадра UITableView что я сделал в Interface Builder. Хотя, если я возьму этот код, все будет хорошо.

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

Спасибо!

ответ

4

Решение проблемы. Закройте представление таблицы в внешнем UIView (точно такой же размер, как и представление таблицы, и с табличным представлением на 0,0 в закрытом представлении). Затем подключите выход к этому закрывающему виду и установите на него закругленные верхние углы.

Я думаю, что это ошибка со стороны Apple.

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