2009-06-05 66 views
3

在iPhone附带的时钟应用程序中,有一个用于设置报警的选项卡视图。在这个视图中,每个UITableViewCell实例都有一个阴影。有谁知道如何达到相同的效果?在iPhone时钟应用程序“报警”选项卡上拖放阴影

此外,它看起来像在最底部的标签栏上面也有一个阴影。

想法如何实现相同的外观将不胜感激。

回答

2

我不知道该怎么做,它只是发生在我使用的UITableView的页脚视图:

myTableView.tableFooterView = myCustomViewWithDropShadowImage; 
0

我猜想有一个额外的单元格,其中只包含背景图像,这是透明的阴影。如果它不是一个单元格(因为这可能会产生滚动奇怪),它可能是一个额外的视图,它位于UITableview的底部单元格下方,它又是一个简单的包含投影阴影的图像。

+0

嗯...我不认为额外的细胞理论会起作用,但细胞下面的额外视图肯定是一种可能性。我明天会试试看 – afarnham 2009-06-06 03:58:05

0

像托马斯说,创建一个100%的宽度图像(比如,320×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]; 

,并可能为您的主视图的背景颜色一些黑乎乎的灰。