Sarà ciascuna sezione essere sempre della stessa dimensione? In caso affermativo, perché non si sottoclasse UITableViewCell per disegnare il notebook come elemento con l'ombreggiatura inclusa?
È inoltre possibile aggiungere una UIImageView trasparente su UITableView per ottenere gli angoli oscurati.
EDIT:
Questo effetto è un po 'complicato, si sta andando a voler esaminare come utilizzare UIBezierPaths (http://developer.apple.com/library/IOS/#documentation/UIKit/ Riferimento/UIBezierPath_class/Riferimento/Reference.html).
La parte superiore può essere un'immagine (gli anelli e l'effetto tabulazione). È quindi possibile disegnare il resto della cella nella funzione drawRect. (Questo è più efficiente dell'uso delle proprietà shadow nel layer che è importante in un UITableViewCell).
È necessario sovrascrivere la classe UITableViewCell e implementare una funzione drawRect: personalizzata.
Ecco po 'di codice per iniziare:
// Only override drawRect: if you perform custom drawing.
// An empty implementation adversely affects performance during animation.
- (void)drawRect:(CGRect)rect
{
/* Draw top image here */
//now draw the background of the cell.
UIBezierPath *path1 = [UIBezierPath bezierPathWithRect:CGRectMake(0, 0, 320, 50)];
[[UIColor grayColor] set];
[path1 fill];
UIBezierPath *path2 = [UIBezierPath bezierPathWithRect:CGRectMake(0, 52, 320, 50)];
[[UIColor whiteColor] set];
[path2 fill];
UIBezierPath *path3 = [UIBezierPath bezierPathWithRect:CGRectMake(0, 104, 320, 50)];
[[UIColor grayColor] set];
[path3 fill];
UIBezierPath *path4 = [UIBezierPath bezierPathWithRect:CGRectMake(0, 156, 320, 50)];
[[UIColor whiteColor] set];
[path4 fill];
//and so on...
//Let's draw the shadow behind the last portion of the cell.
UIBezierPath *shadow = [UIBezierPath bezierPathWithRect:CGRectMake(0, 208, 320, 52)];
[[UIColor darkGrayColor] set];
[shadow fill];
//Finally, here's the last cell with a curved bottom
UIBezierPath *path5 = [UIBezierPath bezierPath];
[path5 moveToPoint:CGPointMake(0, 208)];
[path5 addLineToPoint:CGPointMake(320, 208)];
[path5 addLineToPoint:CGPointMake(320, 258)];
[path5 addCurveToPoint:CGPointMake(0, 258) controlPoint1:CGPointMake(160, 254) controlPoint2:CGPointMake(160, 254)];
[[UIColor grayColor] set];
[path5 fill];
}
Il codice non è il drag abbastanza and drop, è ancora necessario aggiungere le linee bianche, correggere alcuni formati, e modificare l'ultima cella e ombre per essere giusto Ma dovrebbe essere sufficiente per iniziare.
Cheers!
Il collegamento non esiste. – Leena