ios - 以 UISLiders 作为外接半径的五角大楼
<p><p>我想在 iOS 中用 <code>UISliders</code> 作为 <code>circumradii</code> 绘制一个 <code>pentagon</code>(一组五个 <code>UISliders</code>从五边形的中心向不同的方向前进)。目前,我已经使用一个共同的 <code>anchorPoint</code> (<code>:setAnchorPoint</code>) 旋转了五个 <code>UISlider</code>,但它们似乎并非源自一个共同点。
我该怎么办?我需要开始使用自定义控件吗? <code>Quartz2D</code> 还有什么我可以使用的?
一些具体的指标会很有用(请不要只说“使用<code>Quartz2D</code>”)</p>
<p>这是我所取得的成就<a href="http://i.imgur.com/8UBv7ZQ" rel="noreferrer noopener nofollow">Imgur</a> </p>
<p>这就是我想要实现的 <a href="http://i.imgur.com/R6Nh08u" rel="noreferrer noopener nofollow">Imgur</a> </p></p>
<br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
<p><p>我将各种 slider 定义为 IBOutletCollection,因此我可以将它们作为 Controller 中的数组进行访问。然后我在 <code>viewWillAppear:</code></p> 中运行以下代码
<pre><code>CGPoint viewCenter = self.view.center;
for (NSInteger i = 0, count = self.sliders.count; i < count; ++i) {
UISlider *slider = self.sliders;
CGFloat angle = 2.0f * M_PI / count;
CALayer *layer = slider.layer;
layer.anchorPoint = CGPointMake(0.0f, 0.5f);
layer.position = viewCenter;
layer.transform = CATransform3DMakeRotation(i * angle - M_PI_2, 0.0f, 0.0f, 1.0f);
}
</code></pre>
<p>这是结果的截图:</p>
<p> <img src="/image/PJzzE.png" alt="Circumradii sliders"/> </p>
<p>这是你想要的吗?</p></p>
<p style="font-size: 20px;">关于ios - 以 UISLiders 作为外接半径的五角大楼,我们在Stack Overflow上找到一个类似的问题:
<a href="https://stackoverflow.com/questions/17484907/" rel="noreferrer noopener nofollow" style="color: red;">
https://stackoverflow.com/questions/17484907/
</a>
</p>
页:
[1]