有没有办法让UIPopOver变得透明(alpha = 0.75左右)?不幸的是,UIPopOver没有alpha属性。我需要呈现一个弹出窗口,以便它下面的视图仍然部分可见。有什么想法吗?
发布于 2011-01-13 18:04:49
popoverController.contentViewController.view.alpha = 0.5;alpha是UIView的一个属性,因此您需要获取popOver的视图,然后将alpha设置为该视图。
发布于 2013-02-17 10:16:44
从iOS5.0开始,用户可以为UIPopoverController提供自定义背景。这个背景必须从UIPopoverBackgroundView派生出来,它提供了像alpha这样的普通UIView属性。请注意,这个名称有点让人困惑-- UIPopoverBackgroundView提供了框架、箭头以及背景图形。
因此,如果您需要一个完全半透明的UIPopoverController,您所要做的就是提供一个UIPopoverBackgroundView类,它将其alpha设置为低于1.0的值。您还需要确保contentViewController的视图是(完全)透明的。
示例:

有关详情,请访问see the popoverBackgroundViewClass property of UIPopoverController
popoverBackgroundViewClass用于显示弹出背景内容的类。
@property (nonatomic, readwrite, retain) Class popoverBackgroundViewClass讨论
此属性的默认值为nil,表示popover控制器应使用默认的popover外观。将此属性设置为nil以外的值会导致popover控制器使用指定的类来绘制popover的背景内容。您指定的类必须是UIPopoverBackgroundView的子类。
可用性在iOS 5.0及更高版本中可用。在UIPopoverController.h中声明
发布于 2011-12-07 23:04:41
当前没有用于设置UIPopoverController的alpha的属性。
如果你这样做了:popoverController.contentViewController.view.alpha = 0.5;
内部视图和内容将是透明的,而不是UIPopoverController本身。
https://stackoverflow.com/questions/4678456
复制相似问题