2011-07-22 11 views
4

それだけです。私は2つのボタンを中心にしたい。 私のツールバーはこのようになります([B]はボタンです):NSToolbarItemをツールバーの中央に置くことはできますか?

[B] < ----柔軟なスペースが---> [B] [B] < ----柔軟なスペース - - > [検索バー]

しかし、検索バーは左端のボタンよりも大きく、中央のボタンは中央に配置されていません。私はカスタム幅のビューを追加しようとしましたが、それはローカリゼーションによって台無しです。 センターを配置する方法はありますか?

答えて

2

ツールバーを使用する可能性がありますが、実際にボタンの順序を超えたレイアウトを制御することは、必ずしも良い考えではありません。

編集: Mail.appは、あなたが提案しているものとまったく同じように、Voodooを使用していることに私の注目を集めました。

これは、ツールバーのアイテムを追跡し、ツールバーの最初の柔軟なスペースのサイズを変更してツールバーを整列させることで行います。

これは、特定の使用例では機能する可能性がありますが、脆弱である可能性があります。慎重に使用し、ユーザーがツールバーをカスタマイズできる場合は、柔軟なスペースを削除してセンタリングを嫌うことに注意してください。

+0

しかしMail.appはこれを行います。彼らはソースリストとボタンを揃えていますか? – david

+0

@david:Mail.appは、Voodooとしてしか記述できないものを使います。 –

+2

この質問は日付が付けられていますが、mail.app https://github.com/jwells89/JWToolbarAdaptiveSpaceItem – Cory

10

非常に遅い対応が、私はちょうど次のツールバー項目を中央にスペースを作成するサブクラスを書いている私もこれを行うために必要なのは:代わりに、この複雑なアプローチの

http://github.com/timothyarmes/TAAdaptiveSpaceItem

+0

ちょうど私が必要なもの!残念ながら、Xcodeのデフォルトの「all rights reserved」以外のコードでライセンスを見つけることはできません。人々がこれを使用できるようにするために、BSDスタイルのライセンスファイルをリポジトリにコミットして正式なものにすることを検討できますか? – DouglasHeriot

+2

はい、追加する必要があります。私はMITライセンスを追加しますので、あなたが好きなように使うかもしれないと思います。 – tarmes

+0

ライセンスを追加してください。これも私の問題を解決しましたが、ライセンスなしでは使用できません。ありがとう! –

0

を、それらの2つのボタンがウィンドウの中央に来るまで、それぞれの側に余分な空白の項目を追加することで、それを中央に置くことにしました。ツールバーは適切にサイズ変更する必要があります。

関連する問題