N'arrive pas à trouver un tutoriel qui n'est que la question du titre décrit. J'aimerais comprendre exactement où la UIToolbar doit être déclaré et comment le mettre sur ma couche vue.
Merci!
N'arrive pas à trouver un tutoriel qui n'est que la question du titre décrit. J'aimerais comprendre exactement où la UIToolbar doit être déclaré et comment le mettre sur ma couche vue.
Merci!
Si votre utilisation de UINavigationController de la Barre d'outils est livré par défaut avec elle.
Vous pouvez ajouter à l'aide de ligne de code suivante:
self.navigationController.toolbarHidden=NO;
Et pour ajouter un bouton à votre Barre d'outils, vous pouvez utiliser le code suivant:
UIBarButtonItem *flexiableItem = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:self action:nil];
UIBarButtonItem *item1 = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemAdd target:self action:nil];
UIBarButtonItem *item2 = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemAction target:self action:nil];
flexiableItem est utilisé pour maintenir une distance appropriée entre les deux boutons de ce que nous avons créé ci-dessus.
maintenant, vous pouvez ajouter ces trois articles afin de les rendre visibles sur votre point de vue.
NSArray *items = [NSArray arrayWithObjects:item1, flexiableItem, item2, nil];
self.toolbarItems = items;
[flexiableItem release];
[item1 release];
[item2 release];
J'espère que cela fonctionne pour vous.
UIToolbar
est une sous-classe de UIView
, de sorte que la réponse courte à votre question est: juste comme n'importe quel autre point de vue.
Plus précisément, c'est un exemple de procédure de programmation pour créer une barre d'outils. Le contexte de cet extrait est - viewDidLoad
d'un point de vue contrôleur.
UIToolbar *toolbar = [[UIToolbar alloc] init];
toolbar.frame = CGRectMake(0, 0, self.view.frame.size.width, 44);
NSMutableArray *items = [[NSMutableArray alloc] init];
[items addObject:[[[UIBarButtonItem alloc] initWith....] autorelease]];
[toolbar setItems:items animated:NO];
[items release];
[self.view addSubview:toolbar];
[toolbar release];
Voir UIToolbar et UIBarButtonItem la documentation pour plus de détails.
Pour afficher la Barre d'outils au bas de l'espace entre les deux boutons sur le Côté Gauche , et l'autre à Droite
-(void)showToolBar
{
CGRect frame, remain;
CGRectDivide(self.view.bounds, &frame, &remain, 44, CGRectMaxYEdge);
UIToolbar *toolbar = [[UIToolbar alloc] initWithFrame:frame];
UIBarButtonItem *button1 = [[UIBarButtonItem alloc] initWithTitle:@"Send" style:UIBarButtonItemStyleDone target:self action:nil];
UIBarButtonItem *spacer = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:self action:nil];
UIBarButtonItem *button2=[[UIBarButtonItem alloc]initWithTitle:@"Cancel" style:UIBarButtonItemStyleDone target:self action:nil];
[toolbar setItems:[[NSArray alloc] initWithObjects:button1,spacer,button2,nil]];
[toolbar setAutoresizingMask:UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleTopMargin];
[self.view addSubview:toolbar];
}
Remarque: Pour Donner de l'espace entre le Bouton de nous ajouter une ligne comme ci-dessous
UIBarButtonItem *spacer = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:self action:nil];
et ajouter de l'entretoise de la
[toolbar setItems:[[NSArray alloc] initWithObjects:button1,spacer,button2,nil]];
Essayez cette Méthode simple:
UIToolbar *toolbar = [[UIToolbar alloc] init];
toolbar.frame = CGRectMake(0, 0, 300, 44);
UIBarButtonItem *button1 = [[UIBarButtonItem alloc] initWithTitle:@"Send" style:UIBarButtonItemStyleDone target:self action:@selector(sendAction)];
UIBarButtonItem *button2=[[UIBarButtonItem alloc]initWithTitle:@"Cancel" style:UIBarButtonItemStyleDone target:self action:@selector(cancelAction)];
[toolbar setItems:[[NSArray alloc] initWithObjects:button1,button2, nil]];
[self.view addSubview:toolbar];
De cette façon, u mettre en œuvre UIToolbar dans votre application , uitoolbar est sous-classe de UIView , il ont délégué méthode également de mettre en œuvre de supprimer la méthode aussi.
// declare frame of uitoolbar
**UIToolBar** *lotoolbar = [[UIToolbar alloc] initWithFrame:CGRectMake(0, 170, 320, 30)];
[lotoolbar setTintColor:[UIColor blackColor]];
UIBarButtonItem *button1 = [[UIBarButtonItem alloc] initWithTitle:@"DATE" style:UIBarButtonItemStyleDone target:self action:@selector(dateToolbardoneButtonAction)];
UIBarButtonItem *button2=[[UIBarButtonItem alloc]initWithTitle:@"TIME" style:UIBarButtonItemStyleDone target:self action:@selector(timeToolbarbuttonAction)];
[lotoolbar setItems:[[NSArray alloc] initWithObjects:button1, nil]];
[lotoolbar setItems:[[NSArray alloc] initWithObjects:button2, nil]];
[mainUIview addSubview:lotoolbar];
[button1 release];
[button2 release];
// delegate method
- (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text
{
}
- (void)textViewDidChange:(UITextView *)textView{
NSLog(@"textViewDidChange:");
}
- (void)textViewDidChangeSelection:(UITextView *)textView{
NSLog(@"textViewDidChangeSelection:");
}
- (BOOL)textViewShouldBeginEditing:(UITextView *)textView
{
[lotextview setText:@""];
NSLog(@"textViewShouldBeginEditing:");
return YES;
}
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.