NSSlider具有非线性比例

时间:2015-05-05 14:49:49

标签: macos cocoa swift nsslider

我试图让NSSlider的值/数字非线性...

@IBOutlet private weak var _countSlider:NSSlider!;

let countSliderValues:[Int] = [1, 20, 50, 100, 500, 1000];
_countSlider.numberOfTickMarks = countSliderValues.count;
_countSlider.minValue = Double(countSliderValues[0]);
_countSlider.maxValue = Double(countSliderValues[countSliderValues.count - 1]);
_countSlider.allowsTickMarkValuesOnly = true;
_countSlider.integerValue = 100;

但由于某种原因,滑块显示线性值(1,200,400,600,800,1000)。有谁知道为什么会这样?

1 个答案:

答案 0 :(得分:2)

刻度线属性的数量设置在滑块的最小值和最大值之间均匀划分的刻度线。无法为每个单独的刻度标记定义目标值。

您最好的选择是通过子类化<article id="post-<?php the_ID(); ?>" <?php post_class('container-fluid'); ?>> <div class="row"> <div class="col-md-12 horiz-cell"> <h2><a href="<?php the_permalink(); ?>" rel="bookmark"><?php the_title(); ?></a></h2> <?php the_category(', '); ?> </div> </div> </article><!-- /#post --> NSSlider并强制它们按照您想要的方式运行您自己的解决方案,或者从头开始创建您自己的完全新颖的控件,特定于非 - 线性缩放。没有人说你仍然可以使用NSSliderCell来绘制标准系统部件(轨道和旋钮)。