【iPhone SDK】iOS6にてViewの背景色にUITableViewのGroupe表示時の背景色を指定する方法

IMG_0016.PNG

iOS5まではViewの背景色に上のようなテーブルビューのグループ表示時の背景色を指定したい場合
+ (UIColor *)groupTableViewBackgroundColor
というメソッドを使えばOKでした

しかしiOS6からこのメソッドは使用できなくなりました。

従来のアプリでこの背景色を使用していたものは対応を必要とされます。

では、メソッドが使えない今、どのように対応するのか?
SDKのUIInterface.hにこのメソッドの定義がされているのですが、
コメントでこう書かれています。

// Group style table view backgrounds can no longer be represented by a simple color.
// If you want to have a background in your own view that looks like the table view background,
// then you should create an empty table view and place it behind your content.
要約すると空っぽのテーブルビューをつくって配置してくれ

…はい
なにそれ?

コメントだけ?

というわけでさくっと空っぽのテーブルを作ってみました。


    UITableView* emptyTableView = [[UITableView alloc] initWithFrame: frame style: UITableViewStyleGrouped];
    [emptyTableView setAutoresizingMask: UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight];
    [self.view addSubview: emptyTableView];
    [emptyTableView release];

回転対応があることを考慮してAutoresizingMaskを指定しています。

しかし、iOS6は地雷が多いですね。
気をつけましょう

この記事へのコメント


この記事へのトラックバック