2017-05-01 16 views
0

私はユーザーのgithubリポジトリのリストを表示するMenuBar Swift Cocoaアプリケーションを構築しています。 1つをクリックすると、github.comのリポジトリを持つ新しいブラウザウィンドウが開きます。NSMenuItemに検索バーを表示するには

私は正常にreposのリストを読み込んでNSMenuItemオブジェクトにレンダリングしています。今、私はリストの上部に検索バーを追加し、検索フレーズに従ってアイテムを再レンダリングしようとしています。

私の質問は以下のとおりです。

  1. NSMenuの「検索バー」を表示するための最良の方法は何ですか?
  2. NSMenuItemの "検索/フィルタリング"の標準的な方法はありますか?
  3. メニュー全体を再レンダリングし(.removeAllItems())、新しい項目を動的に追加する必要がありますか?または、2つの静的メニューを用意する必要がありますか?私はレイアウト(例えば、NSMenuItem)がユーザーが検索しているときとそうでないときに違いが出るので、これを尋ねています。

私はSwift 3とXcode 8.3を使用しています。ありがとう!

+1

メニューをフィルタリングするための特別なビルドは何もありません。だから、私はremoveAllItemsを試して、必要に応じて追加します。 – catlan

+0

ありがとう@catlan私はそれをやろう! –

答えて

1

私が試して数ヶ月後、私はそれを理解しました。

  1. NSMenuに「検索バー」を表示する最良の方法は何ですか?

    あなたはNSMenuNSMenuItemを追加し、それがCustomViewsearchItem.view = searchView、コントローラにストーリーボードからそれをドラッグしてsearchItemsearchViewを接続)へのビューの設定することができます。

  2. NSMenuItemsを「検索/フィルタリングする」標準的な方法はありますか?

    いいえ、ありません。アイテムをクリアして再レンダリングします。

  3. メニュー全体(.removeAllItems())を再レンダリングし、新しい項目を動的に追加する必要がありますか?または、2つの静的メニューを用意する必要がありますか?私はレイアウト(例えば、NSMenuItems)がユーザーが検索しているときとそうでないときに違いが出るので、これを尋ねています。

    2つのサブメニューを持つことが良い解決策であることが判明しました。

関連する問題