Comment définissez-vous l'image d'un UIButton dans le code?
J'ai ceci:
UIButton *btnTwo = [UIButton buttonWithType:UIButtonTypeRoundedRect];
btnTwo.frame = CGRectMake(40, 140, 240, 30);
[btnTwo setTitle:@"vc2:v1" forState:UIControlStateNormal];
[btnTwo addTarget:self action:@selector(goToOne) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:btnTwo];
mais ne voyez pas ce qui définira l'image pour cela.
setImage
obsolète. (Il me semble que vous confondezUIButton.setImage
avecUITableViewCell.image
, ce qui est une propriété OBSOLETE que vous avez dit.)La solution de Mike affichera simplement l'image, mais tout titre défini sur le bouton ne sera pas visible, car vous pouvez définir le titre ou l'image.
Si vous souhaitez définir les deux (votre image et votre titre), utilisez le code suivant:
la source
Avant que cela ne fonctionne pour moi, j'ai dû redimensionner le cadre du bouton explicitement en fonction de la taille du cadre de l'image.
la source
[listButton sizeToFit]
En cas d'utilisateur Swift
la source
Vous pouvez le faire comme ça
la source
la source
Vous pouvez mettre l'image de l'une ou l'autre façon:
la source
Je cherchais une solution pour ajouter un
UIImage
à monUIButton
. Le problème était simplement qu'il affiche l'image plus grande que nécessaire. Je viens de m'aider avec ça:Chaque fois que je veux afficher mon,
UIImageView
je règle simplement la varhidden
surYES
ouNO
. Il pourrait y avoir d'autres solutions, mais je me suis confondu tellement de fois avec ce genre de choses et cela l'a résolu et je n'avais pas besoin de gérer les choses internesUIButton
en arrière-plan.la source
Ne vous inquiétez pas tellement de l'encadrement du bouton à partir du code, vous pouvez le faire sur le storyboard. Cela a fonctionné pour moi, une ligne ... plus simple.
la source
la source
Version Swift 3 (butt_img doit être un ensemble d'images dans le dossier Assets.xcassets ou Images.xcassets dans Xcode):
Quoi qu'il en soit, si vous souhaitez que l'image soit mise à l'échelle pour remplir la taille du bouton, vous pouvez ajouter un
UIImageView
dessus et lui affecter votre image:la source