标签: uislider

如何使UISlider输出呈指数级的圆形数字?

我正在实现一个用户可以操作设置距离的UISlider.我从未使用过CocoaTouch UISlider,但是使用过其他框架滑块,通常有一个变量用于设置"step"和其他"helper"属性.

UISlider的文档仅处理最大值和最小值,输出始终为6十进制浮点数,与"滑块nob"的位置成线性关系.我想我将不得不一步一步地实现所需的功能.

对于用户来说,最小/最大值的范围从10米到999公里,我试图以指数方式实现这一点,这对用户来说是自然的.即,用户体验到对价值的控制感,无论大小.此外,"输出"具有合理的价值.值如10m 200m 2.5km 150 km等而不是1.2342356 m或108.93837756 km.

我希望步长增加10米,前200米,然后可能是50米到500米,然后当通过1000米时,它开始处理公里,所以它的步长= 1公里直到50公里,然后可能25公里步等.

无论如何,我最终会进行大量的舍入和大量的计算,包含在for语句和NSString/Number转换中,每次用户移动滑块一点点.

我希望有人能借给我一些灵感/数学帮助,或者让我意识到一种更精益的方法来解决这个问题.

我的最后一个想法是用100个字符串值填充和数组,然后让滑块int值对应一个字符串,这不是很灵活,但可行.

提前感谢您给予的任何帮助:)

iphone uislider

7
推荐指数
2
解决办法
8426
查看次数

iPhone:编程UISlider以定位点击位置

如何将滑块设置为单击位置,并在iPhone编程中的UISlider上单击的位置获取滑块值.我知道我们可以将滑块拖动到那个位置,但我不想这样做.你能告诉我如何将滑块设置为点击位置吗?这可能吗?

iphone uislider

7
推荐指数
3
解决办法
6003
查看次数

将UISlider.value设置为AVPlayer.currentTime

我试图将UISlider的值设置为AVPlayer的当前时间.

我正在尝试使用此代码 audioPlayer.currentTime = nowPlayingSlider.value;

我收到此错误:
Setter method is needed to assign to object using property assignment syntax
我如何让它工作.

iphone sdk uislider avplayer

7
推荐指数
1
解决办法
1万
查看次数

UISlider平滑地改变价值

我有一个UIslider设置AVAdioRecording的位置:

CGRect frame = CGRectMake(50.0, 230.0, 200.0, 10.0);
                     aSlider = [[UISlider alloc] initWithFrame:frame];
                     // Set a timer which keep getting the current music time and update the UISlider in 1 sec interval
                     sliderTimer = [NSTimer scheduledTimerWithTimeInterval:0.4 target:self selector:@selector(updateSlider) userInfo:nil repeats:YES];
                     // Set the maximum value of the UISlider
                     aSlider.maximumValue = player.duration;
                     // Set the valueChanged target
                     [aSlider addTarget:self action:@selector(sliderChanged:) forControlEvents:UIControlEventValueChanged];
                     [self.ViewA addSubview:aSlider];




 - (void)updateSlider {
// Update the slider about the music time

[UIView beginAnimations:@"returnSliderToInitialValue" context:NULL];
[UIView setAnimationCurve:UIViewAnimationCurveEaseOut];
[UIView setAnimationDuration:1.3]; …
Run Code Online (Sandbox Code Playgroud)

cocoa-touch objective-c uislider ios

7
推荐指数
2
解决办法
1万
查看次数

在iOS 8中未取消UISlider事件?

我们目前正在测试iOS 8设备上商店中的应用程序(iOS 7应用程序).我们注意到UISliders存在很大的性能问题.

如果我们将滑块从左向右快速拉动几次,滑块将不会立即转到我们的最后位置.它将执行我们用手指完成的每一个动作.好像中间触摸事件没有被正确取消.

在iOS 7上,滑块性能很好.

有谁遇到过同样的问题?这是一个已知的问题吗?这个问题有方法解决吗?

performance uislider ios ios8

7
推荐指数
1
解决办法
299
查看次数

jQuery ui滑块错误的值?

示例代码:http: //jsbin.com/eqile3/

这是一个带有2个手柄的滑块,1个用于min,1个用于max,在滑动事件中,这些值放在输入字段中.

请注意,当向上和向下滑动最小手柄时,最小值为11(尽管我将其设置为10),但是当从最小位置向上滑动时,它从11变为10然后是11.如果我向下滑动又一次是12到11 ......

很奇怪的错误,不确定原因在哪里?

此外,当min-handle位于从步骤0开始的第一步时,因此值为10,然后我移动max-handle,min-handle的值被正确更新.max-handle有相反的问题.

示例中的相关javascript:

$(document).ready(function(){
  $('#clarityslider').slider({step:1,min:10,max:18,range:true,values:[10, 18]});  

  $('#clarityslider').bind('slide', function(ui, event){
    valuemin = $(this).slider('values', 0);
    valuemax = $(this).slider('values', 1);


    $(this).next().val(valuemax);
    $(this).prev().val(valuemin);
  });
});
Run Code Online (Sandbox Code Playgroud)

jquery jquery-ui slider uislider

6
推荐指数
2
解决办法
4634
查看次数

在特定点上点击时更改Uislider值

我想通过点击而不是通过拖动滑块拇指来点击UISlider上的特定点来触发动作.

如何在某个点上点击UISlider来设置滑块值?

一段代码将不胜感激.

iphone uislider ios

6
推荐指数
2
解决办法
6766
查看次数

如何阅读UISlider拇指图像的大小

我正试图在UISlider中将一个额外的UIView放在拇指上方.为此,我需要拇指图像的宽度.在iOS6中,这很好用.我可以用:

CGFloat thumbWidth = self.navSlider.currentThumbImage.size.width;
Run Code Online (Sandbox Code Playgroud)

(如下所示:如何获得UISlider拇指图像的中心)

这在iOS7中返回0.0f.我也试过用它来阅读:

UIImage *thumb = [self.navSlider thumbImageForState:UIControlStateNormal];
Run Code Online (Sandbox Code Playgroud)

但拇指结束为零.

是否可以读取默认滑块拇指图像的大小?或者我必须找到它,设置一个常量,以及Apple如何在以后不改变它?

iphone uislider ios

6
推荐指数
2
解决办法
7079
查看次数

UIslider拇指图像不从头开始

我正在尝试实现一个控件来显示视频的进度,我正在使用带有自定义拇指图像的UISlider,但拇指图像不是从头开始,也不会一直持续到最后.

playerProgress = UISlider(frame: CGRectMake((btnImage.size.width + 2 * VideoViewControllerUX.ControlPadding), 0, (screenRect.size.width - (btnImage.size.width + 3 * VideoViewControllerUX.ControlPadding)), btnImage.size.height))
playerProgress.setThumbImage(UIImage(named: "slider"), forState: UIControlState.Normal)
playerProgress.maximumValue = 100
playerProgress.minimumValue = 0
playerProgress.addTarget(self, action: "playerProgressChanged:", forControlEvents: UIControlEvents.ValueChanged)
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

我不知道最近发生了什么.

拇指图像: 在此输入图像描述

uislider ios swift

6
推荐指数
1
解决办法
2720
查看次数

快速更改UISlider的高度

我正在尝试更改UISlider的高度。这是我目前正在做的:

class CustomSlider: UISlider {

override func trackRect(forBounds bounds: CGRect) -> CGRect {
    var newBounds = super.trackRect(forBounds: bounds)
    newBounds.size.height = 20.0
    return newBounds
}

@IBInspectable var thumbImage: UIImage? {
    didSet {
        setThumbImage(thumbImage, for: .normal)
    }
}

@IBInspectable var thumbHighlightedImage: UIImage? {
    didSet {
        setThumbImage(thumbImage, for: .highlighted)
    }
}

}
Run Code Online (Sandbox Code Playgroud)

它似乎在大多数情况下都有效,但是我遇到一个问题,当滑块移到末尾时,就不再舍入,如下图所示:

滑块问题

有什么办法解决这个问题?我更愿意使用系统滑块,而不是自定义滑块。

编辑:更改图像。

iphone xcode uislider ios swift

6
推荐指数
1
解决办法
459
查看次数