我想在UIView的底部和右側添加陰影,但是我發現所有的解決方案都是爲四個視圖添加陰影。有沒有辦法解決這個問題?如何將陰影添加到uiview的底部和右側?
3
A
回答
1
我可以通過在視圖的底部和右側添加兩個具有拉伸陰影圖像的UIImageView來實現。您不必使用這些UIImageView覆蓋所有視圖,只需根據需要剪切即可。看看iPhone上的顏色混合圖層,我相信這些美麗的陰影是通過使用UIImageView創建的。這節省了系統資源。當然,您可以使用CALayer創建陰影,但我認爲它會消耗更多系統資源來渲染陰影,因此CALayer是我的第二選擇。
19
您可以使用CAGradientLayer
像這樣,
CAGradientLayer *shadow = [CAGradientLayer layer];
shadow.frame = CGRectMake(-10, 0, 10, myView.frame.size.height);
shadow.startPoint = CGPointMake(1.0, 0.5);
shadow.endPoint = CGPointMake(0, 0.5);
shadow.colors = [NSArray arrayWithObjects:(id)[[UIColor colorWithWhite:0.0 alpha:0.4f] CGColor], (id)[[UIColor clearColor] CGColor], nil];
[myView.layer addSublayer:shadow];
你必須改變frame
,以滿足您的需求。此示例沿着左側視圖的高度顯示陰影。您還可以更改開始點和結束點以控制陰影的方向。
0
UIBezierPath *shadowPath = [UIBezierPath
bezierPathWithRect:self.yourViewObj.bounds];
self.yourViewObj.layer.masksToBounds = NO;
self.yourViewObj.layer.shadowColor = [UIColor blackColor].CGColor;//*** color you want for shadow
self.yourViewObj.layer.shadowOffset = CGSizeMake(5.0f, 5.0f);
self.yourViewObj.layer.shadowOpacity = 0.7f;
self.yourViewObj.layer.shadowPath = shadowPath.CGPath;
相關問題
- 1. Createjs陰影只在右側和底部
- 2. css嵌入框陰影頂部,左側,右側,底部圖像
- 3. 應用底部框陰影在左側和右側底部留下一些陰影空間
- 4. 將陰影添加到UIImageView的頂部和底部
- 5. 如何僅在左側,右側和底部創建箱形陰影?
- 6. 添加陰影UINavigationBar的底部只有
- 7. 左右側的陰影
- 8. 將傳播陰影添加到按鈕的底部Android
- 9. 黑色陰影添加到UIView的maskView
- 10. 如何陰影底部
- 11. 底部陰影到ListPopupWindow android
- 12. 將內部陰影添加到文本
- 13. 如何在左側和右側視圖上創建陰影?
- 14. Android如何在左側和右側創建漸變陰影?
- 15. 如何將陰影添加到UITableView?
- 16. 如何將陰影添加到UIButton?
- 17. 將陰影添加到UINavigationControllerer
- 18. 將陰影添加到UIBarButton
- 19. 頂部和底部的盒子陰影
- 20. 如何設置一個盒子陰影的div元素的所有方面,左陰影,右陰影,頂部陰影,底部陰影?
- 21. UIView內部的陰影
- 22. android右和底部透明按鈕上的陰影效果?
- 23. UIView陰影和InterfaceBuilder
- 24. 將陰影添加到使用SnapKit定位的UIView
- 25. UITableView陰影頂部和底部
- 26. 如何將工具欄添加到WPF中列表框的底部,頂部,左側或右側?
- 27. CollectionView底部的陰影
- 28. 如何在ios swift中的uiview中左右兩側設置陰影?
- 29. 格子的陰影(不在右側)
- 30. 試圖讓左側和右側的CSS陰影
有沒有辦法使用CALayer的shadowOffset和shadowRadius來實現目標? – tom 2012-04-16 01:04:42
我想你可以通過改變框架來做到這一點。 – edc1591 2012-04-16 01:34:31