2011-09-16 4 views
3

J'utilise UITableView.I définir l'image de fond de table comme ceci.UITableView problème d'image de fond

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

enter image description here

J'utilise le style de table groupée. Mais en affichage, je reçois une ombre noire sur les côtés gauche et droit de la cellule groupée.

Comment enlever cette ombre noire?

Merci à l'avance.

+0

êtes-vous définissez la propriété avant de clearclor couleur – Srinivas

+0

Non, je ne pas utiliser la propriété clearcolor. – joe

+0

essayez d'abord de couleur claire puis mettre au-dessus du code de retour – Srinivas

Répondre

5

Try this ..

self.tableView.backgroundColor=[UIColor clearColor]; 
UIImage *backgroundImage = [UIImage imageNamed:@"sample2.png"]; 
UIImageView *backgroundImageView = [[UIImageView alloc]initWithImage:backgroundImage]; 
self.tableView.backgroundView=backgroundImageView; 
[backgroundImageView release]; 
+0

Maintenant son travail. Merci d'avoir répondu – joe

0

Vous pouvez utiliser ces lignes au lieu de la ligne ci-dessus pour se débarrasser de la couleur noire:

UIImage *backgroundImage = [UIImage imageNamed:@"b.jpg"]; 
UIImageView *backgroundView = [[UIImageView alloc]initWithImage:backgroundImage]; 
[self.view addSubview:backgroundView]; 
[self.view sendSubviewToBack:backgroundView]; 
0

Définissez la propriété opaque à NO:

[self.tableView setOpaque: NO]; 
+0

j'ai toujours le problème après la mise en setOpaque No – joe

+0

est le contrôleur a 'UITableViewController', ou' UIViewController'? – WrightsCS

+0

Il est un UITableViewController – joe

1

Tout d'abord, définir l'image d'arrière-plan pour la parent de la table à l'image que vous voulez:

[parentView setBackgroundColor:[UIColor colorWithPatternImage:[UIImage imageNamed:@"bg.png"]]; 

Ensuite, définissez l'image de fond pour l'UITableView à clearColor:

self.tableView.backgroundColor = [UIColor clearColor]; 

Cela devrait résoudre le problème.

+0

Cela fonctionne très bien si vous ne voulez pas l'image arrière-plan/vue d'étirer si la vue de la table est redimensionnée – jopke

0

Set backgroundColor à clearColor du tableview et mis à zéro backgroundView du tableview et il affichera la couleur de la vue sur laquelle il a été ajouté à. Et si votre vue de table est un contrôleur de vue de table de style groupé autonome, définissez sa propriété opaque sur NO.