2011-07-18 10 views
5

私はアプリケーションの上部と下部にツールバーを持っており、ツールバーに入れるボタンを作成する必要があります。このアプリケーションを設計する人は、ツールバーのボタンの間にスペースを入れたいと思っています。 Buttonの位置の変更を手動でコーディングする以外に、Interface Builderを使用してこれを行うより良い方法がありますか?ツールバーにバーボタンアイテムを配置する

答えて

23

UIBarButtonSystemItemFlexibaleSpaceのバーボタンをスペースを挿入する場所に追加できます。

UIBarButtonItem *barButton1 = ... 
UIBarButtonItem *barButton2 = ... 

UIBarButtonItem *flexibleSpaceBarButton = [[UIBarButtonItem alloc] 
          initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace 
               target:nil 
               action:nil]; 

toolbar.items = [NSArray arrayWithObjects:barButton1, 
              flexibleSpaceBarButton, 
              barButton2, nil]; 
+0

これをxib/storyboardファイルでも実行できるようになりました。 UIBarButtonItemをドラッグアンドドロップし、その識別子プロパティをFixedまたはFlexible Spaceに設定します。 –

+0

@HashimAkhtarどこでIBの識別子プロパティを設定できますか? Xcode 8では、「システム項目」のみが表示され、「識別子」は表示されません。 –

2

EmptyStackが書いたように、UIBarButtonItemFlexibleSpaceを使用してボタン間にスペースを作成できます。上記のコードを使用するか、Interface Builderで実行します。 IBでは、ツールバーを配置する必要があります。そして、アイテムリストの最後を覚えていれば、ツールバーアイテムを見つけることができます。そのため、ツールバーに柔軟なスペースアイテムを追加し、その幅で遊んでからツールバーに「実際の」バーボタンを追加することができます。通常のUIButtonの場合と同様に、アウトレットを宣言し、アクションをバーボタンに割り当てることができます。

関連する問題