0
我正在尋找一個自定義UIView
子類,它有一個「洞」,通過它可以看到它下面的視圖。我已經使用一些Core Graphics繪圖和裁剪來完成這個任務。好玩的東西。防止看到UIView陰影
我也喜歡這個視圖,叫做WheelDetailView
,有一個陰影。很簡單。我已經做到了這一點的東西,如:
[[self layer] setShadowColor:[[UIColor blackColor] CGColor]];
[[self layer] setShadowRadius:4.0];
[[self layer] setShadowOpacity:1.0];
[[self layer] setShadowOffset:CGSizeMake(0, 2)];
的問題是,這種設置給了我,我已經在我的視圖中創建的「洞」內陰影。雖然我意識到這是非常有意義的,因爲你會希望在現實生活中看到陰影,所以我寧願只在我的視野周圍出現陰影。
這裏是它的現在出現:
我輪匿名的有意模糊的一部分;你可以忽略這一點。
正如您所看到的那樣,陰影既存在於視圖之外,也存在於其中。有誰知道一個很好的方法來消除這種影響?
我喜歡你在做什麼思考,但不幸的是,我不能那樣做。輪子本身就是一個'UIImageView',理論上它可以放在我的'WheelDetailView'之上,但這會導致一些問題。例如,向框架底部延伸的藍色光束必須保持在輪子上方,但在「WheelDetailView」下方。此外,'WheelDetailView'可以從屏幕外進行動畫處理,如果它在輪子下方動畫,看起來不太合適。 – ravron 2012-07-18 00:03:17
所以我會爲影子使用圖片並將其放在所有視圖的後面。或者甚至爲整個WheelDetailsView創建一個包含洞和陰影的圖像。嘗試使用photoshop或任何其他圖形工具,它不應該是困難的,從我的經驗來看,它會更好(性能方面),然後用核心圖形繪製所有圖形。 – Eyal 2012-07-18 00:11:33
您的解決方案*可以*工作,所以我會給您支票。不過,我希望有人提出一個CG解決方案。也許他們仍然會。感謝您的輸入! – ravron 2012-07-18 14:15:21