Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 矢量图形绘制旋钮_Ios_Objective C_Opengl Es_Quartz Graphics - Fatal编程技术网

Ios 矢量图形绘制旋钮

Ios 矢量图形绘制旋钮,ios,objective-c,opengl-es,quartz-graphics,Ios,Objective C,Opengl Es,Quartz Graphics,我想用旋钮画一个界面,类似于这张照片中的“overdrive”(绿色): 在iOS中,如矢量图形,我应该使用吗?石英、OpenGL ES或其他什么 我确信OpenGL可以完成,但我认为它非常复杂。因此,如果可以的话,我会避免使用更“简单”的方法。这在很大程度上取决于GUI的其余部分是如何呈现的。然而,除非您已经在使用OpenGL,否则Quartz或CoreAnimation可能是您最好的选择 从屏幕截图上看,似乎您可以通过两个图像层实现效果,一个背景(静态)和一个前景(旋转) 背景图像可以有比

我想用旋钮画一个界面,类似于这张照片中的“overdrive”(绿色):

在iOS中,如矢量图形,我应该使用吗?石英、OpenGL ES或其他什么


我确信OpenGL可以完成,但我认为它非常复杂。因此,如果可以的话,我会避免使用更“简单”的方法。这在很大程度上取决于GUI的其余部分是如何呈现的。然而,除非您已经在使用OpenGL,否则Quartz或CoreAnimation可能是您最好的选择

从屏幕截图上看,似乎您可以通过两个图像层实现效果,一个背景(静态)和一个前景(旋转)

背景图像可以有比例(画在踏板上)和阴影,然后是黑色旋钮边框和闪亮的金属中间。然后,您可以使用石英或CGLayer以适当的角度绘制黑色记号标记指示器并旋转它(特别是如果您希望按钮纹理的一部分与之一起旋转)

看起来旋钮是光滑的,所以你不必担心旋转边缘。假设光源是固定的,左上边缘的高光和金属中间的光也可以是静态的

但是,如果您想更逼真,可以尝试使用第三层,其中只有闪亮的中间部分,然后在指针旋转时稍微来回旋转,以设置旋钮中间部分的动画。它不需要一路走;也许10度左右的变化应该有助于推销这种效果