【问题标题】:Blur the layer underneath模糊下面的图层
【发布时间】:2010-10-04 16:40:17
【问题描述】:

嘿! 我的应用程序中有一个 SlidingDrawer。当它打开时,我希望它下面的所有东西都变得模糊。无论如何我可以做到这一点?谢谢。

【问题讨论】:

    标签: java android canvas blur


    【解决方案1】:

    “BLUR_BEHIND”设置是您目前只能在窗口/活动级别设置的窗口功能。除非您想让滑动抽屉包含整个活动(这听起来不像您想要的),否则我认为仅使用 Android API 很难实现您想要的。

    【讨论】:

    • 你确定吗?它真的会给我的应用程序一个很棒的外观。我曾尝试过使用 Sliding Drawer 的 onDraw(),但它似乎没有任何效果。你知道为什么吗?
    • 当您覆盖视图的 onDraw 事件时,它允许您修改该视图的绘制方式,而不是其背后的视图。您可以改用半透明视图(这可以通过绘制或简单地设置背景来完成),但模糊效果需要使用 API 无法访问的较低级别的代码。我在 API 中看到对模糊的引用的唯一其他地方是表面对象。不幸的是,我们无法根据此链接进行设置:groups.google.com/group/android-developers/browse_thread/thread/…
    • 但是当我试图通过将 SlidingDrawing 的 onDraw() 扩展到另一个类来覆盖它时,我绘制的任何内容都不会对滑动抽屉产生任何影响。为什么会这样?
    • 有很多原因取决于你写的内容,我必须看看你的代码才能得到一个想法。
    • 好吧,我刚刚扩展了 SlidingDrawer 并创建了一个新的 MySlidingDrawer。我覆盖了 onDraw() 函数,并使用 canvas.drawRect() 绘制了一个红色的矩形(在绘制对象中指定)。但 SlidingDrawer 是这样的。实际调用了 onDraw 吗?谢谢。
    猜你喜欢
    • 2013-01-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-08-14
    • 2018-03-05
    • 2018-10-02
    • 2020-09-08
    相关资源
    最近更新 更多