0

このコードは、EKEventViews(コードが添付されている)の色をカスタマイズするための将来の保証ですか?つまり、ApplerevのバージョンのIOSとしては問題ないはずです。

そうでない場合、どのコードをお勧めしますか?

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {   
    self.detailViewController = [[EKEventViewController alloc] initWithNibName:nil bundle:nil];         
    detailViewController.event = [self.eventsList objectAtIndex:indexPath.row];
    [self.navigationController pushViewController:detailViewController animated:YES];

    // CODE UNDER QUESTION HERE
    UITableView *tv = (UITableView*)[detailViewController.view.subviews objectAtIndex:0];
    [tv setBackgroundColor:[UIColor yellowColor]];
    UIView *v = (UIView*)[[tv visibleCells] objectAtIndex:0];
    v.backgroundColor = [UIColor greenColor];
}
4

1 に答える 1

1

今では完全に有効ですが、Appleはいつでも構造を変更しUITableViewたりEKEventViewController、カスタマイズを壊したりする可能性があります。tintColor新しいプロパティを調べてみてください。また、それ以外の場合、テーブルビューをどこで操作しますか?あなたはそれを提示してそれを残すだけではありませんよね?したがって、他のどこで変更できる可能性があります。助けるためにもっとコードが必要です。[detailViewController.view.subviews objectAtIndex:0].backgroundColor' to[UIColoryellowColor]`などを設定することもできます。

于 2011-12-12T17:04:53.560 に答える