2009-07-13 29 views

cevap

3

.

UIImageView *background = [[UIImageView alloc]initWithImage: [UIImage imageNamed: @"background.jpg"]]; 
    [tableView addSubview: background]; 
    [tableView sendSubviewToBack: background]; 
+1

Teşekkürler, denedim, ancak sendSubviewToBack iletisinin bu durumda gerektiği gibi çalışmadığını düşünüyorum: UIImageView hücrelerin üzerine yerleştirilir. Herhangi bir ipucu? –

+1

Bu yaklaşım benim ilk denememdi. Onu arkaya göndermek yine de onu hücrelerin üstüne koyar. –

-6

Olası bir cevap oldu - besbelli - zaten stackoverflow:

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

Ref: iPhone - Setting background on UITableViewController

Düzenleme: Ben

+2

Bu, her hücredeki arka planın kısımlarını kullanacaktır. Eğer arka plan görüntüsü daha yüksekse, o zaman işe yaramayacak bir hücreye sahip olursunuz. – OgreSwamp

+6

Bu, doğru bir cevap DEĞİLDİR. Arka plan resmi, tabloyla birlikte kaydırılmayacak. – Bobo

+1

Bunun çalışması gerekiyor mu? Ben arka plan, her hücre içinde arka planın parçalarını kullanır tablo viewer ile kaydırılabilir olsa da, @OgreSwamp belirtilen aynı sorunla karşı karşıya. Bu çözüm işe yaramazsa, bu neden doğru cevap olarak kabul edildi? –

3

:) biliyorum mükemmel cevap değil Cevabın UITableView sınıfını alt sınıflamak ve layoutSubviews'ı geçersiz kılmak olduğunu düşünürdüm. UITableView'da bir arka plan UIImageView'a işaret eden bir özellik yapmalısınız.

Eğer layoutSubviews geçersiz

sadece sen UITableView backgroundColor özellik aracılığıyla arka plan görüntüsü belirlemek zorunda

-(void) layoutSubviews { 
    [self sendSubviewToBack: backgroundImageView]; 
    [super layoutSubviews]; 

} 
+0

Ne yazık ki, görüntülerin karıştığı tüm köşe durumlarını düzeltmek için bu yeterli değildir. – steipete

+0

nasıl? Aslında sorunu çözüyor, kendim denedim. Hangi köşe vakalarından bahsediyorsun? – thewormsterror

+0

Bazen, UITableView görünümleri karıştırır. IOS sürümleri arasında deterministik ve farklı değil. Bunu kullanma. ScrollViewDidScroll – steipete

6

yazın:

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

içinde yeniden konumlandırılan kaydırma UIImageView kullandım Eğer bir 'UITableViewController' kullanmıyorsanız, 'tableView.backgroundColor = ... ' – Jochen

+0

Bu güzel – Eugene

+1

Bu da iOS6'da çalışıyor mu? Bunu viewDidLoad uygulamasında deniyorum ama hiçbir şey olmuyor, hala standart grouptableview bg'yi gösteriyor. – JonEasy

İlgili konular