【问题标题】:UIButton only background slightly transparentUIButton 仅背景略微透明
【发布时间】:2010-08-16 23:16:05
【问题描述】:

是否可以只使背景半透明?如果我更改 alpha,它会更改标题和边框。我可以更改 titleLabel.alpha 属性,但它不会超出按钮 Alpha 的上方,只会位于其下方。

我知道我可以定制一个,但我认为会有更简单的方法

【问题讨论】:

  • 所以 backgroundColor 的影响超出了您的预期?抱歉,如果这是您所说的自定义,但是如果使用带有图像的按钮,其中图像是纯色并具有您想要的 alpha 呢?
  • backgoundColor 改变外部周围的颜色,而不是内部。我实际上也想要按钮的边界,如果我改变 alpha 它也会改变它。我尝试了一个空白图像或 nil,但它没有达到预期的效果

标签: iphone uibutton alpha


【解决方案1】:

用类似这样的东西渲染一个空白按钮:

UIGraphicsBeginImageContextWithOptions(size,0,0);
[button.layer renderInContext:UIGraphicsGetCurrentContext()];
UIImage * img = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();

从那里开始,将 alpha 减半并不难(在拉出图像之前,在“DestOver”混合模式下用 50% 不透明的矩形填充它?)。然后将其设置为自定义按钮的背景。

恶心。哦,好吧。

或者,您可以直接修改视图层次结构中的视图;不推荐,因为它往往会跨越操作系统版本。

【讨论】:

  • 简而言之,这两种方式都很糟糕。我最终做了一个自定义的
猜你喜欢
  • 2012-05-26
  • 1970-01-01
  • 1970-01-01
  • 2011-03-08
  • 2014-06-24
  • 2021-12-25
  • 2013-11-30
  • 2021-09-20
  • 2019-02-07
相关资源
最近更新 更多