Aligner les éléments UIToolBar

J’ai trois UIBarButtonItem créés comme ci-dessous. Ils s’alignent à gauche et je voudrais aligner le centre pour qu’il n’y ait pas d’espace sur le côté droit. Je ne vois pas de propriété align sur UIToolBar . Y a-t-il une autre façon d’accomplir cela?

 //create some buttons UIBarButtonItem *aboutButton = [[UIBarButtonItem alloc] initWithTitle:@"About" style:UIBarButtonItemStyleBordered target:self action:@selector(showAbout:)]; [toolbar setItems:[NSArray arrayWithObjects:settingsButton,deleteButton,aboutButton,nil]]; //Add the toolbar as a subview to the navigation controller. [self.navigationController.view addSubview:toolbar]; 

    Ajoutez deux éléments UIBarButtonSystemItemFlexibleSpace à votre barre d’outils, à gauche et à droite de vos éléments

     UIBarButtonItem *flexibleSpace = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:nil action:nil]; [toolbar setItems:[NSArray arrayWithObjects:flexibleSpace, settingsButton,deleteButton,aboutButton, flexibleSpace, nil]]; 

    L’ajout de ces éléments comme vous le feriez pour tout autre élément de la barre d’outils répartira l’espace de manière égale entre eux.

    Cela peut aussi être fait directement depuis un storyboard.

    Il suffit de faire glisser et de déposer des éléments dans la barre d’outils et de les transformer en espaces flexibles ou fixes pour obtenir l’effet souhaité. Voir les deux exemples ci-dessous.

    Régulièrement espacés

    Centré

    Dans Xamarin iOS

    Aligné à droite:

     yourBar.SetItems(new [] { new UIBarButtonItem(UIBarButtonSystemItem.FlexibleSpace), yourButton }, false); 

    Centre Aligné:

     var flexibleSpace = new UIBarButtonItem(UIBarButtonSystemItem.FlexibleSpace); yourBar.SetItems(new [] { flexibleSpace, yourButton, flexibleSpace}, false); 

    Version rapide:

      let toolbar = UIToolbar(frame: CGRectMake(0, 0, viewController.view.frame.size.width, 35.0)) let flexibleSpace = UIBarButtonItem(barButtonSystemItem: UIBarButtonSystemItem.FlexibleSpace, target: viewController, action: nil) let button1 = UIBarButtonItem(title: "A", style: UIBarButtonItemStyle.Plain, target: viewController, action: foo) let button2 = UIBarButtonItem(title: "B", style: UIBarButtonItemStyle.Plain, target: viewController, action: bar) let button3 = UIBarButtonItem(title: "C", style: UIBarButtonItemStyle.Plain, target: viewController, action: blah) toolbar.items = [button1, flexibleSpace, button2, flexibleSpace, button3]