À moins de mettre une UIWebView comme couche la plus en arrière dans mon fichier nib, comment puis-je ajouter une image d'arrière-plan répétitive à une application iPhone (comme le look velours côtelé en arrière-plan d'une UITableView groupée)?
Dois-je créer une image de la taille de l'écran de l'iPhone et la répéter manuellement à l'aide du copier-coller?
Apparemment, un UIColor n'est pas nécessairement une seule couleur, mais peut également être un motif. Confusément, cela n'est pas pris en charge dans Interface Builder.
Au lieu de cela, vous définissez le backgroundColor de la vue (par exemple, dans -viewDidLoad) avec la méthode pratique + colorWithPatternImage: et lui passez une image d'interface utilisateur. Par exemple:
- (void)viewDidLoad {
[super viewDidLoad];
self.view.backgroundColor = [UIColor colorWithPatternImage: [UIImage imageNamed:@"gingham.png"]];
}
Bien sûr, n'oubliez pas d'ajouter le fichier image à votre bundle d'application.
Il existe également des "couleurs" de motifs d'arrière-plan intégrés:
Parce que le sont utilisés à l'échelle mondiale dans toutes les applications iPhone, vous encourez l'épée à double tranchant d'une mise à jour du système d'exploitation mettant à jour l'apparence de votre application (lui donnant un nouveau look qui peut ou non fonctionner correctement).
Par exemple:
- (void)viewDidLoad {
[super viewDidLoad];
self.view.backgroundColor = [UIColor groupTableViewBackgroundColor];
}
Vous pouvez même avoir des images d'arrière-plan animées en mosaïque qui se déplacent. :RÉ
Apps Amuck a un tutoriel simple qui vous montre comment faire cela sur leur site.
Vous devriez jeter un coup d'œil à l'exemple de code iPhone QuartzDemo d'Apple, en particulier QuartzImageDrawing.m. Devrait utiliser l'appel de méthode suivant.
CGContextDrawTiledImage
Vous devez utiliser colorWithPatternImage