2011-02-07 39 views
0

テーブルビュー内で、特定のセルにシャドウを表示する方法はありますか?私は私のテーブルビューの最後のセルに影を表示したい。残りの細胞は正常でなければなりません。テーブルビュー内のセルにシャドウを表示

次のコードを使用していますが、セルが終了してから影が来ています。

[self.layer setShadowOffset:CGSizeMake(0, 1)]; 
[self.layer setShadowOpacity:1]; 
[self.layer setShadowRadius:1.0f]; 
[self.layer setShadowColor:[UIColor colorWithRed:50.0 green:70.0 blue:56.0 alpha:0.5].CGColor]; 
[self.layer setShadowPath:[[UIBezierPath bezierPathWithRect:CGRectMake(0, -44, 320.0,20)] CGPath]]; 
+0

あなたは正確に影をどういう意味ですか?どのコードでどのセルの影を設定しますか? – mrueg

答えて

1

あなたは自分のtableviewsのデータソースの-[tableView:cellForRowAtIndexPath:]方法であなたのセルを変更することができます。私は影が私のセルの先頭になりたいです。

indexPath.rowがテーブルビューの最後の行であることを確認します。そうでない場合は、いつものようにテーブルビューのセルを返します。それ以外の場合は、影付きのセルを返します。おそらく、シャドウを持つセルに別のreuseIdentifierを持たせることが最善の方法です(詳細は、UITableViewCellとUITableViewDataSourceのドキュメントを参照してください)。

+0

これは大丈夫です。しかし、私は次のコードを使用していたが、影がセルが完成した後に来る。シャドウを私のセルの冒頭に置いておきたい:[self.layer setShadowOffset:CGSizeMake(0、1)]; \t \t [self.layer setShadowOpacity:1]; \t \t [self.layer setShadowRadius:1.0f]; \t \t [self.layer setShadowColor:[UIColor colorWithRed:50.0 green:70.0 blue:56.0 alpha:0.5] .CGColor]; \t \t [self.layer setShadowPath:[[UIBezierPath bezierPathWithRect:CGRectMake(0、-44、320.0,20)] CGPath]]; – Abhinav

関連する問題