UIButton 在按钮图像和标题后面留下白色背景
Posted
技术标签:
【中文标题】UIButton 在按钮图像和标题后面留下白色背景【英文标题】:UIButton leaves white background behind button image and title 【发布时间】:2015-12-18 21:31:45 【问题描述】:我UIButton
s 上面有图片和标题。我正在使用appearanceWhenContainedInInstancesOfClasses:
更改应用程序中的主题。当我根据我想要的主题更改 UIButton 的背景和标题颜色时,它会在 UIButton 的标题和图像后面留下一些白色背景(下图显示它)。
如何去掉按钮标签和图片后面的白色背景?
【问题讨论】:
【参考方案1】:您可以为每个按钮使用以下代码。
btn.backgroundColor = [UIColor clearColor];
btn.opaque = NO;
详细说明:
问题的根源在于,按钮的默认背景颜色是白色,因此一旦将背景颜色/主题应用于按钮所在的 UIView,白色就会变得可见且看起来不太好。因此,我建议将 btw 颜色 clearColor 或 UIView 颜色更改为白色。
【讨论】:
我试过了,但它不起作用。 UIView 具有您看到的默认颜色。 UIButton 上的图像和按钮标签下是否有一些 uiview?如果有怎么访问呢? 您正在 UIView 顶部添加按钮。所以在z平面上,Button在上,UIView在下。如果您将按钮背景颜色更改为清除,则 btn 将没有背景颜色 我正在为全局的 uiviews 设置白色,如下所示:[[UIView appearanceWhenContainedInInstancesOfClasses:@[[GoogleAdsViewController class]]] setBackgroundColor:[UIColor whiteColor]];
。我发现这是导致问题的原因。不知道如何解决这个问题。
试试下面的[[UIView appearanceWhenContainedInInstancesOfClasses:@[[GoogleAdsViewController class]]] setBackgroundColor:[UIColor clearColor]];
已经试过了,但这会破坏我的其他观点,因为我将它用于主题。【参考方案2】:
您可能已将按钮的图像设置为背景,或者您的图像本身具有白色背景。
【讨论】:
以上是关于UIButton 在按钮图像和标题后面留下白色背景的主要内容,如果未能解决你的问题,请参考以下文章
iOS:如果背景图像与按钮颜色相同,则更改我的 UIButton 的颜色