【问题标题】:Glass effects UIView玻璃效果 UIView
【发布时间】:2012-05-12 20:08:59
【问题描述】:

我想知道如何在 UIView 上添加玻璃效果

我想在您可以在此处看到的灰色半透明视图上使用something like this effects

谢谢

【问题讨论】:

    标签: objective-c uiview effects quartz-core


    【解决方案1】:

    在 UIView 中没有什么像玻璃效果。您所能做的就是将视图的不透明度设置在 0 和 1 之间。此外,上面显示的视图具有一组精美的图像,使其看起来像您的“玻璃效果”。

    如果你想让你的 UIView 变得“闪亮而优雅”,你可以通过两种方式做到:-

    1>您可以简单地在使用 Photoshop 创建的图像中添加效果,因为这样可以减少编程的开销。

    2>您可以使用苹果提供的 core-Graphics 库来获得它,然后您可能需要进入更复杂的绘图世界并查看Tutorial to get Gloss Effect

    Glossy Buttons By Ray wendelich

    Another Tutorial on Glossy button

    【讨论】:

    • 我已经在上面看到的图片上将不透明度设置为 0.2,但这与我想要的相差甚远,我确信我可以做更多但我不知道如何
    【解决方案2】:

    有一个非常酷的 Mac 应用程序,名为 PaintCode,它允许您以类似于 Photoshop 的方式创建光泽/玻璃效果,但随后生成的代码可以添加到您的应用程序中。他们在这里举了一些例子:http://www.paintcodeapp.com/examples.html

    【讨论】:

    • PaintCode 看起来很不错,但我现在买不起,而且免费版很垃圾。
    【解决方案3】:

    没有简单的方法可以使用 UIView 实现这一点,但当然可以这样做,就像所有图形工作都可以完成:设置绘图上下文并在视图中使用 CoreGraphics 绘制效果 drawRect 方法。

    如果您好奇,我建议您查看一个名为 Opacity 的应用程序。它是适用于 Mac OS 的简单图形编辑器 - 允许您在可视画布上工作并应用效果,其中包括“玻璃”过滤器。这个应用程序的显着特点是它会为您使用它的 GUI 直观地设计的内容生成支持 Quartz 代码。

    它生成的代码可能足以满足您的需求,也可能不够,但我经常使用它来生成粗略的绘图代码,然后我可以将其作为组合我自己的绘图代码的基础。

    除了我使用它之外,我与该产品没有任何关系。

    【讨论】:

      【解决方案4】:

      我猜你的 UIView 中需要有光泽的效果。这可以通过设置 UIView 的 alpha 掩码并在 UIView 的 drawrect 方法中将背景颜色调整为更暗来实现。如果这不能满足您的需求,您可以寻求Matt Galagher 概述的更全面的解决方案

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-03-01
        • 1970-01-01
        • 1970-01-01
        • 2011-02-26
        • 2014-05-02
        • 2018-03-25
        相关资源
        最近更新 更多