【问题标题】:iPhone - Create a semi transparent rectangle with opaque textiPhone - 创建一个带有不透明文本的半透明矩形
【发布时间】:2011-08-13 08:00:17
【问题描述】:

我有一个 MapView,我想在顶部显示一个黑色的半透明矩形,里面有一个文本。不是在整个地图上只在它的一部分(可能在顶角),只是作为一个信息框(就像 iPod 播放器中双击出现并显示静音和跳过按钮的那个)。

我尝试了谷歌,但没有得到任何明确的答案。实现这一目标的最佳方法是什么?

提前致谢

【问题讨论】:

标签: iphone uiview transparency uilabel alpha


【解决方案1】:

可以通过界面生成器轻松完成:

查看层次结构

注意 背景必须是一个单独的视图,它是控件列表中的第一个条目,所以它在背景中。将容器视图设置为低于 1 的 alpha 值也会被子视图继承,在界面构建器中不会显示

视图“具有清晰颜色 bg 和 alpha 1.0 的视图”的设置

视图“黑色半透明背景视图”的设置

【讨论】:

  • 这似乎比我想象的要容易得多!我回家后会试试这个。谢谢。
  • 如果您需要以编程方式返回并询问。
  • 我需要将标签更新为计时器。但我认为我可以用 IB 做到这一点,然后在我的代码中将它与 UILabel 连接并更新它。我说的对吗?
  • 您好,我对此有两个问题: 1) 内部标签显示具有 alpha 透明度的文本。我怎样才能改变这种行为? 2)可以隐藏透明视图吗?我只想在某些场合展示这种观点。提前致谢
  • 我看到了问题。好的,这很容易解决,我下周会更新我的答案,我要去参加婚礼。但是,简短的回答是:创建一个容器视图,其中包含两个视图:标签和背景视图。背景视图与容器大小相同。将容器的 alpha 设置为 1.0,将背景颜色设置为 clearColor。背景视图的 alpha 为 0.5。如果尚未完成,现在将层次结构中的标签移动到顶部(相同级别但首先,背景位于标签后面)。 Interface builder没有显示继承子视图的alpha的效果。
猜你喜欢
  • 1970-01-01
  • 2016-05-25
  • 2014-08-20
  • 2021-04-10
  • 1970-01-01
  • 2015-11-19
  • 1970-01-01
  • 1970-01-01
  • 2011-10-19
相关资源
最近更新 更多