2009-09-03 14 views

答えて

3

別のプロジェクト(2.2.1を使用して開発)では、UITableView'のバックグラウンドの不透明度を0%に設定し、Interface Builderを使用してUIImageViewをレイヤーするだけです。これにより、テーブルの状態に関係なく固定の背景を持つことができました。代わりにUITableViewの背景をイメージに設定することもできますが、背景はテーブルとともにスクロールします。 (私は現時点では便利なコードを持っていないが、Appleの開発者フォーラムではちょっとしたヒントを得ている)。

これはパフォーマンス上の問題を引き起こす可能性があることに注意してください。 3GS以前のモデルのGPUは特に重労働ではないため、Appleは可能な限り透明性を使用することを控えています。

3

あなたがそうのよう+[UIColor colorWithPatternImage:(UIImage)]メソッドを使用することができます。

self.tableView.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"Background.png"]]; 
2
を持っています10

希望すると、これが役立ちます。特にグループ化されたUITableViewの場合、セルの背後には恐ろしい半透明の背景は表示されません。

+4

アクセスparentViewController.viewはひどいアイデアです試してみてくださいカプセル化の。今でも動作していても、次回のiOSアップデートでコードが完全に破損する可能性があります。これをしないでください。 –

24

(私はそれを考え出したら、かなりシンプルな;)ここでは私のために働いたものだ

1)アプリのデリゲートにビューを追加し、ウィンドウのサブビューます

UIView *bgView = [[UIView alloc]initWithFrame:window.frame]; 

bgView.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"screenBG.png"]]; 
[window addSubview:bgView]; 
[bgView release]; 

2 )各ビューコントローラ.mファイルで、のviewDidLoadの下で、(透明にその特定のビューの設定背景色がので、上記作成された他のbgView)を介して表示されます:

self.view.backgroundColor = [UIColor clearColor]; 

そして、私の場合には、Vをステップ2のコントローラを表示するのはテーブルビューコントローラでした。素晴らしく見える。

そしてところで、各ビューコントローラで次の操作を実行すると、うまく動作しませんでした:

self.view.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"screenBG.png"]]; 

だから、上記の手順1と2に従ってください。あなたはそれを持っているバックアップの種類がわからない、それはかなり悪い違反だ - これはアウトに役立ちます

希望、 Tbone

+0

私はこのトリックが好きです。 – winnicki

+2

アプリケーションデリゲートで、もっと簡単に行うこともできます:self.window。backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@ "bg.png"]]; –

+0

私はここのGil Margolinに同意します...ウィンドウのbackgroundColorをイメージとして設定する方が簡単でした。 1つの注意点では、手動でretina/iphone5の正しい画像をロードする必要があり、これは少し複雑です。 –

9

この

- (void) viewDidLoad { 
    [super viewDidLoad]; 

    self.tableView.backgroundColor = [UIColor clearColor]; 
    self.view.backgroundColor = [UIColor colorWithPatternImage: [UIImage imageNamed:@"wallpaper.png"]]; 
    self.tableView.opaque = NO; 
} 
+0

背景色を設定する代わりに、テーブルビューの背後に画像ビューを追加することもできます。これにより、パターン画像の使用を避けることができます。 – TigerCoding

関連する問題