2012-08-14 4 views
5

私はココアアプリケーションでNSPopoverを持っています.Lionは半透明でレンダリングするので、オーバーレイするテキストフィールドや表などが表示されます。これらは現在、下に表示されていてとても奇妙に見えます。私はAppleからクラス参照ドキュメントをチェックしましたが、それを不透明に変更する方法はないようです。外観を指定するために使用できるように見える唯一の2つのプロパティ値はNSPopoverAppearanceMinimal,NSPopoverAppearanceHUDですが、どちらもアルファまたは不透明度に関係していないようです。 drawRectを乗り越えて不透明にする唯一の方法はNSPopoverですか?それとももっと良い方法を知っている人はいますか?それは完全に不透明な背景を有効にするにはiOSではUIPopoverのために利用可能になるようだが、ココアのためではないNSPopover ...NSPopoverの不透明度を変更したいのですが可能ですか?

+0

あるOSXのバージョンは何あなたは使っていますか?私は最小限の外観でその動作を見ません - 私にはかなり不透明なようです。背景を変更したい場合は、(カスタムタイプの)NSBoxを追加してビュー全体をカバーし、必要な背景色を付けてください。 – rdelmar

+0

OSX 10.8を使用しています。ほとんど不透明ですが、ポップオーバーの背後にあるテキストは少しでも見えます。全体的なものをカバーするために(カスタムタイプの)NSBoxを追加しようとしました - うまくいきましたが、それはポップオーバーにあるテキストの上にそれ自身を描画し、最下位レイヤ(IBの中に) Popoverに含まれているテキストフィールドをレンダリングします。私はプログラムでそれを行う方法があると確信しています...私はそれを把握するとすぐにここにソリューションを投稿しようとします。ありがとう! –

+0

あなたが持っているテキストフィールドとその他のUI要素は、すべてボックスに埋め込む必要があります。すべてを選択してから、「エディタ」メニューの「埋め込み」オプションをクリックしてください。これにより、ボックスのすべてのサブビューが作成され、上部に表示されます。 – rdelmar

答えて

関連する問題