Personnalisé UIBarButtonItem
Je suis en train de créer un personnalisé UIBarbuttonItem qui utilise seulement un png avec de la transparence, de sorte que je n'ai qu'une icône de bouton. Lorsque je tente de régler le bouton image, mettez le fond en blanc, et de définir le style de la Plaine, je reçois toujours une ombre interne et bordure noire autour d'elle.
Ce qui donne?
J'ai essayé le code ci-dessous et il met toujours la bordure noire autour d'elle.
UIImage *background = [UIImage imageNamed:@"Dismiss_normal.png"];
UIImage *backgroundSelected = [UIImage imageNamed:@"Dismiss_selected.png"];
self.closeButton = [UIButton buttonWithType:UIButtonTypeCustom];
[self.closeButton addTarget:self action:@selector(closeButtonPressed:) forControlEvents:UIControlEventTouchUpInside]; //adding action
[self.closeButton setBackgroundImage:background forState:UIControlStateNormal];
[self.closeButton setBackgroundImage:backgroundSelected forState:UIControlStateSelected];
self.closeButton.frame = CGRectMake(0 ,0,background.size.width, background.size.height);
self.closeButtonItem = [[UIBarButtonItem alloc] initWithCustomView:self.closeButton];
self.navigationItem.leftBarButtonItem = self.closeButtonItem;
Ce que j'ai remarqué, c'est que si je fais un modal segue le bouton, avec le code ci-dessus a toujours une bordure noire autour d'elle, mais si je fais un push segue il ne l'est pas? WTF?
OriginalL'auteur jdog | 2013-06-07
Vous devez vous connecter pour publier un commentaire.
J'ai compris votre problème.
Lorsque vous fait pousser un
UIViewController
, il sera une partie de l'existantUINavigationController
. Ainsi, leUINavigationBar
conserve. Mais lorsque vous utilisezModalViewController
juste une autreUIViewController
sorte de "ajoutée" à votreUIViewController
. Ainsi, leUINavigationBar
ne sera pas là.Mais vous pouvez en ajouter un autre
UINavigationBar
dexib
et ajouter unUIButton
. Mais ne pas ajouter directement leUIButton
, si vous le faites, il sera automatiquement converti enUIBarButton
rendant bordé.Donc faites d'abord glisser normale
UIButton
à votreUIView
(pas de barre de navigation). Modifier la coutume et ajouterUIImage
à l'aide deAttribute Inspector
. Ensuite, faites glisser l'image de votre personnalisé crééUINavigationBar
. Il fonctionnera comme j'ai essayé tout à l'heure. Vous pouvez voir la capture d'écran ci-dessous.J'ai été suivie pour les étapes de votre... Ce type de bouton d'action n'a pas de travail @property (faible, nonatomic) IBOutlet UIBarButtonItem *sidebarButton; donner Prise d'action, Mais l'action du bouton n'a pas de travail
OriginalL'auteur Javvadi Rajesh
Vous devez définir le type de bouton Personnalisé et l'image de l'icône pour le bouton fond.
exemple de code:
Puis réglez ce bouton pour votre BarButtonItem comme ceci:
OriginalL'auteur Primoz990
Cela permettra de mettre à jour TOUS les boutons et les barres de navigation tout au long de l'application.
J'ai utilisé le code Suivant pour définir la Coutume de Navigation bouton de retour
et le code Suivant pour le Réglage de l'image de fond sur la barre de navigation.
sous-classe de la UINavigationController et modifier de la barre de navigation de là et d'utiliser la sous-classe comme votre principal outil de navigation,
OriginalL'auteur Ayush
Essayez d'utiliser [UIBarButtonItem initWithCustomView]
OriginalL'auteur Splendid
Personnellement, j'aime FlatUIKit de l' approche par simplement la mise à plat de l'ensemble de l'INTERFACE utilisateur à travers UIAppearance
Essentiellement, vous feriez quelque chose comme:
OriginalL'auteur Jonathon Hibbard
Essayer ce code..
OriginalL'auteur NANNAV