UITableView を持つ UIViewController があります。は、ビュー コントローラーのビューの内側にあり、すべての側面にパディングがあります。テーブル ビューと丸みを帯びた角からドロップ シャドウを描画しようとしていますが、両方を同時に実現することはできません。次のコードを試してみて、masksToBounds のオンとオフを切り替えましたが、NO に設定すると、シャドウ スクロールで非常に奇妙な効果が生じ、呼び出しがテーブル内でクリッピングされません。
[self.tableView.layer setShadowColor:[UIColor blackColor].CGColor];
[self.tableView.layer setShadowOffset:CGSizeMake(0, 3)];
[self.tableView.layer setShadowOpacity:0.4];
[self.tableView.layer setShadowRadius:3.0f];
[self.tableView.layer setCornerRadius:5.0f];
[self.tableView.layer setShadowPath:[[UIBezierPath bezierPathWithRoundedRect:self.tableView.bounds cornerRadius:5.0f] CGPath]];
私もプレーンなスタイルで UITableView を描いています。私が達成しようとしている効果は、無料アプリTransit Appで見ることができます。これは影が残っているのを見ることができるムービーで、テーブルには上下にスクロールするマスクさえあります。
私は検索して検索しましたが、他のSOの回答やオンライン記事に基づいて解決策をまとめることができませんでした. 助けていただければ幸いです。