Как сказал Томас, создайте изображение шириной 100% (скажем, 320 x 40 пикселей на устройствах без сетчатки) и создайте с ним 4 экземпляра UIImageView. Первый, вверху вашего основного вида. Второе, внизу, и дополнительно сделаем так:
UIImageView* bottomShadow = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"BottmShadow.png"]]
bottomShadow.transform = CGAffineTransformMakeScale(1, -1);
(Отразить по вертикали)
Затем сделайте то же самое с двумя другими, но разместите их как подпредставления представления таблицы. Один из них за пределами первого ряда:
CGRect tableTopShadowFrame = tableTopShadow.frame;
tableTopShadowFrame.origin.y = -(tableTopShadowFrame.size.height);
[tableTopShadow setFrame:tableTopShadowFrame];
, а другой чуть ниже последней строки (вам нужно знать высоту всех строк вместе. Если все ваши строки имеют одинаковую высоту, то это высота строки, умноженная на количество строк).
Наконец, вам нужно установить свойство backgroundColor таблицы на прозрачное
tableView.backgroundColor = [UIColor clearColor];
и, возможно, установите немного темно-серого цвета для фона основного вида.