我创建了一个桌面 (winforms) 和基于 Web (asp.net) 的仪表板应用程序,它使用Dundas圆形和线性仪表。
例如
我需要使用 xcode ui 和objective c(或可以导入到基于视图的项目中的东西)重新创建这些仪表
是否有任何可用的框架可以创建这些类型的仪表?我看了一下核心情节,但它没有这种功能。
我创建了一个桌面 (winforms) 和基于 Web (asp.net) 的仪表板应用程序,它使用Dundas圆形和线性仪表。
例如
我需要使用 xcode ui 和objective c(或可以导入到基于视图的项目中的东西)重新创建这些仪表
是否有任何可用的框架可以创建这些类型的仪表?我看了一下核心情节,但它没有这种功能。
我知道没有什么可以“开箱即用”地做到这一点。
你可以在 GitHub 的帮助中找到这个问题和MeterView项目。
它们并不像看起来那么困难。您只需要图形资产,然后区分静态与动画图形资产。
使用 Core 动画可以很容易地完成动画。因此,假设您拥有第一个小工具(尽管 Quartz2D 的性能会更高——但使用简单的 UIViews 将是一个好的开始)。
第一个小工具仅具有动画(或基于给定值旋转)的针。图片的其余部分可以是一个简单的 UIImageView。
执行以下操作:
needleView.layer.anchorPoint = BOTTOM_RIGHT_POINT;//to not rotate at center but bottom right or whatever
...
[UIView beginAnimations:nil context:NULL];
[UIView setAnimationDuration:1.0];
CGAffineTransform transform = CGAffineTransformMakeRotation(angle_in_radians);
needleView.transform = transform;
[UIView commitAnimations];
这将旋转针。
对于第二个仪表中的两个针也是如此。对于水平条,执行相同操作,但使用 FRAME 设置条的大小相对于 min_value 和 max_value。
有一些免费的控件,例如您可以在 cocoacontrols.com 中搜索。 https://www.cocoacontrols.com/search?utf8=%E2%9C%93&q=gauge
据我所知,我认为在自由市场上不存在这样一个特定于 BI 的高级仪表板小部件。
但是您绝对可以使用 iOS (Cocoa) 核心库 Quartz 2D 制作它们。