20

グループで UITableView の背景を変更しようとすると、問題が発生します。

_tableView.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"tableViewBg.png"]];

これは通常、他のすべての UITableView で機能しますが、グループを持つものでは機能しません。他に何かしなければならないことがありますか? IB では、背景色をクリア カラーに設定していますが、あまり効果がありません。

4

8 に答える 8

52

さらに、次のバックグラウンド ビューを無効にする必要があります_tableView

[_tableView setBackgroundView:nil];
 _tableView.backgroundColor = [UIColor redColor];

backgroundView に新しいビューを追加する必要はありません。これは私のために働いていますiOS6

于 2013-01-17T09:28:18.420 に答える
5

tableView.backgroundView を設定しないのはなぜですか? 背景色を設定する代わりに、指定した画像を使用して画像ビューを割り当て、それを背景ビューに渡すことができます。

于 2012-06-15T08:33:33.280 に答える
3

グループ化された UITableViews で通常行うことは、背景色をクリアに設定し、そのパターン イメージを親ビューに設定することです。

self.parentViewController.view.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"tableBG.png"]];
self.tableView.backgroundColor = [UIColor clearColor];
于 2012-06-15T08:27:16.010 に答える
0

Nirav の回答に追加したいだけです。iOS 5 の外観プロキシを使用して行うこともできます。

[[UITableView appearance] setBackgroundView:nil];
[[UITableView appearance] setBackgroundColor:[UIColor lightGreyColor]];

利点は、グローバルに適用されるため、すべての UI カスタマイズを 1 か所にグループ化できることです。ただし、(グループ化されたスタイルだけでなく) すべての tableView に適用されます。

于 2013-08-21T10:59:58.910 に答える