2012-11-15 105 views
5

我有UITableView 4節。現在我想將陰影效果添加到表格的特定部分,但不是整個表格。我怎樣才能完成這項任務?陰影部分的UITableView

+1

仍然有問題? – Omarj

+0

是的,沒有找到解決方案 –

回答

2

試試這個

yourView.layer.shadowColor = [[UIColor blackColor] CGColor]; 
yourView.layer.shadowOffset = CGSizeMake(1.0f, 1.0f); 
yourView.layer.shadowRadius = 3.0f; 
yourView.layer.shadowOpacity = 1.0f; 

你需要替換 「yourView」 與別的

不也算了,你需要進口QuartzCore/CALayer.h

+8

我不能使用這個解決方案,因爲我不得不在UIScrollView中顯示它的一個部分而不是整個表 –

+0

http://stackoverflow.com/questions/7812430/how-to-create-定製視圖截面 – Omarj

0

你會必須更改節的頁眉和頁腳以及節的所有單元格。

爲此使用tableView:viewForFooterInSection:,tableView:viewForHeaderInSection:tableView:cellForRowAtIndexPath:。只需添加一個UIView與rgba 0/0/0/0.2或相似的每個視圖,你想成爲黑暗。

0

您可以添加帶有陰影的圖像作爲UITableViewCell的背景。應該在圖像中繪製陰影。這非常簡單,您的應用程序運行速度會更快。

0

您可以指定所需部分的陰影。 這是一個示例。所有的

首先,我們正在做一些可用空間爲您的標題

- (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section 
{ 
    if(section == mysection) 
    { 
     // Returns the height you want for the header section. I am giving 20 
     return 20; 
    } 
} 

然後頭

- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section 
{ 
    if(section == mysection) 
    { 
     UIView *shadowView = [[[UIView alloc] initWithFrame: CGRectMake(0,0,320,20)] autorelease]; 
     shadowView.backgroundColor = [UIColor whiteColor]; 

     // Doing the Decoration Part 
     shadowView.layer.shadowColor = [[UIColor blackColor] CGColor]; 
     shadowView.layer.shadowOffset = CGSizeMake(1.0f, 1.0f); 
     shadowView.layer.shadowRadius = 3.0f; 
     shadowView.layer.shadowOpacity = 1.0f; 

     return shadowView; 
    } 
    return nil; 
} 

完成它在你身邊的裝飾。這是一個基本的大綱。快樂編碼:)

+0

通過這種方式,我可以添加陰影的小區不是截面。 –

+0

請看到我的編輯 –

+0

很好的回答,工作正常。 –