2010-09-28 4 views
0

J'utilise ce code pour ajouter une image de fond à mon tableviewAjout backgroundImage à mon application

myTable.backgroundView = [[[UIImageView alloc] initWithImage:[UIImage imageNamed:@"background.png"]] autorelease]; 

sur internet, ils disent que ce code fonctionne, mais il ne fonctionne pas pour moi quelqu'un peut me aider s'il vous plaît?

Répondre

0

si son un UITableViewController, comme je le crois, faire ceci:

[myTable setBackgroundColor:[UIColor colorWithPatternImage:[UIImage imageNamed:@"background.png"]]]; 

ou vous pouvez faire (sur un contrôleur de vue non table)

[self.view setBackgroundColor:[UIColor colorWithPatternImage:[UIImage imageNamed:@"background.png"]]]; 

ou sur viewDidLoad vous le pouvez faire:

UIImageView *backgroundView = [[[UIImageView alloc] initWithImage:[UIImage imageNamed:@"background.png"]] autorelease]; 
[self.view addSubview:backgroundView]; 

mais c'est un peu en désordre - Je préfère utiliser setBackgroundColor:

+0

est-il possible de le faire dans l'appdelegate? donc les choses ne seraient pas en désordre du tout – Nico

+0

non, malheureusement, il va être désordonné –

+0

mais vous pouvez définir l'arrière-plan du contrôleur de navigation 'self.navigationController.backgroundColor = ...' et ensuite rendre chaque vue suivante transparente? un peu d'un faff cependant. –

0

Le problème est que backgroundview pour tableview est un UIView, pas un UIImage. Donc, vous devez créer une vue, le plus simple est d'utiliser un UIImageView. Par exemple, cela placerait l'image de votre écran d'accueil en vue d'arrière-plan de la table dans un UITableViewController ...

UIImage *backImage = [UIImage imageNamed:@"default.png"]; 
UIImageView *backImageView = [[UIImageView alloc] initWithImage:backImage]; 
self.tableView.backgroundView = backImageView; 

Les méthodes mentionnées ci-dessus sont pré l'introduction de la propriété tableview backgroundview 3.2

modifier - cher dieu j'avais évidemment un déficit de café aujourd'hui :) L'op utilise en effet un UIImageView! La seule chose que je peux penser est qu'il cible une plate-forme pré 3.2 ...

Questions connexes