2012-08-14 33 views
5

我在一個Cocoa應用程序中有一個NSPopover,並且因爲Lion--它呈現爲半透明的,所以它覆蓋的任何文本字段,表格等等 - 現在都在它下面顯示,看起來很奇怪。我查看了Apple的課程參考文檔,但似乎沒有辦法將其改爲不透明。似乎可以指定外觀的唯一兩個屬性值是NSPopoverAppearanceMinimalNSPopoverAppearanceHUD - 但這兩個屬性值似乎都與alpha或不透明度有關。通過搭配drawRect來製作NSPopover不透明的唯一方法是什麼?還是有人知道有更好的方法來做到這一點?這似乎是可以UIPopover在iOS上,但可可不NSPopover ...想要更改NSPopover的不透明度 - 是否有可能?

+0

什麼版本的OSX的是你在用嗎?我沒有看到那種外觀最小的行爲 - 對我來說看起來很不透明。如果你想改變背景,很容易添加NSBox(自定義類型)來覆蓋整個視圖,然後給它任何你想要的背景顏色。 – rdelmar 2012-08-16 03:54:02

+0

我使用的是OSX 10.8。它大部分是不透明的,但你仍然可以稍微看到popover背後的文字。試圖添加NSBox(自定義類型)來覆蓋整個事物 - 哪些工作,但它自己在彈出文本的頂部,即使它放在最底層(在IB),它仍然在Popover中包含的文本字段上呈現。我確信有一種方法可以通過編程的方式來完成......我會盡快在解決方案後發佈解決方案。謝謝! – 2012-09-05 13:40:14

+0

您擁有的文本字段和任何其他UI元素都應該嵌入在框中 - 您可以通過選中所有字段並單擊編輯器菜單下的「嵌入」選項來執行此操作。這使得它們都是該框的子視圖,並且它們將顯示在頂部。 – rdelmar 2012-09-05 14:58:37

回答