Cocoa Touch APIでオプションのデリゲートメソッドを実装しています。私がしたいのは、最初にがと呼ばれるメソッドを呼び出し、デリゲートを実装していない場合は...結果を変更してから、変更したバージョンを返します。ここでデリゲートが存在しない場合に呼び出されるメソッドを呼び出す方法
は例です:
- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section; {
/* this line: */ UIView * headerView = [someObject tableView:tableView viewForHeaderInSection:section];
[headerView setBackgroundColor:[UIColor redColor]];
return headerView;
}
マークされた行は動作しません。私はsomeObject = tableView.delegateを置くことができますが、それは私に無限の再帰を与えます。オプションのメソッドが実装されていないと、tableViewが何をするのかを決めるトリックはありますか?私は超有望ではありませんが、可能であれば涼しいでしょう。