菜鸟教程小白 发表于 2022-12-13 05:30:06

ios - 在 iOS 上绘制动态角(锥形)渐变的最快方法?


                                            <p><p>使用 Core Graphics,传统上的方法是绘制到上下文,然后绘制到屏幕。但是对于动态(用户更改颜色和位置值)渐变,在任何合理的尺寸下,这都非常缓慢,即使在 iPad Air 2 上也是如此。</p>

<p>有什么方法可以考虑用 Core Animation 制作锥形(nee Angular)渐变并避免上下文性能问题,以便快速动态调整渐变?</p></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>我最近写了一个在 Swift 中绘制动态圆锥渐变的库:<a href="https://github.com/tadija/AEConicalGradient" rel="noreferrer noopener nofollow">AEConicalGradient</a> </p>

<p>为了获得更好的性能,我使用的方法是在圆的中心绘制不同角度和颜色的线条,而不是逐个像素地绘制内容(更少的迭代)。 </p>

<p>还有助于打开 <code>CALayer</code> 的 <code>drawsAsynchronously</code> 属性。</p>

<p>在提供的示例中,您可以看到更改设备方向时渐变颜色的动态更新,但在较大的设备上仍然有些迟缓。</p>

<p>如果有人知道如何进一步提高性能,让我们在这里讨论。</p></p>
                                   
                                                <p style="font-size: 20px;">关于ios - 在 iOS 上绘制动态角(锥形)渐变的最快方法?,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/28754870/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/28754870/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: ios - 在 iOS 上绘制动态角(锥形)渐变的最快方法?