1

基本的に、OS X デスクトップ全体 (または理想的にはメニューバー以外のすべて) をスライドさせて、Mountain Lion の通知センターとほぼ同じように、下部に自分のビューを表示することを望んでいます (画面からではなく下部からのみ)。右側)。

少し調べてみましたが、どこから始めればいいのか少し迷っています。NSScreen はメイン画面のフレームを提供しますが、デスクトップ全体 (またはそれに類似したもの) の NSWindow を取得する方法はありません。そのため、ビューが表示されると、デスクトップ自体、ドック、および開いているウィンドウがスライドします。

ヘルプ?:)

4

2 に答える 2

1

私が思いつくことができる最善のアイデアNSWindowは、デスクトップのサイズ(ツールバーを除く)に加えて、NSScreen前に述べたようにを使用して計算できるコンテンツを作成することです。次に、ウィンドウをいじってシャドウをオフにし、ウィンドウスタイルをNSBorderlessWindowMaskに設定し、ウィンドウレベルを適切に設定します。また、Windowsの背景をユーザーのデスクトップの壁紙に設定する必要があります。/Users/<current-user>/Library/Preferences/com.apple.desktop.plistこれを行うための非公式な方法は、 plistから読み取ることです。その後[[mywindow animator] setFrame:NSMakeFrame(...)]、通知センターの外観を複製して、ウィンドウを外側に「スライド」させるために使用できます。これが機能する場合でも、これが絶対に必要かどうかを検討する必要があります。機能を複製する(そして正確に実行しない)と、ユーザーが混乱する可能性があり、通常、Appleヒューマンインターフェイスガイドライン

于 2012-07-28T02:15:23.153 に答える
1

あなたは間違いなく見てみる必要があります:

http://www.cocoacontrols.com/platforms/ios/controls/cnbackstagecontroller

通常のウィンドウとメニュー バーを表示する代わりに、CNBackstageController でビルドされたアプリケーションは、Finder のようなデスクトップの背後にあり、スムーズなアニメーションで表示されます。一般的な用途は、Dock に表示されないステータスバー項目としてネストされたアプリケーションです。

デスクトップが(スクリーンショットだけでなく)使用可能なままであるか、またはアプリストアの準備が整っているかどうかはわかりません.

于 2012-11-15T14:47:20.383 に答える