RPVertical-stepper 0.0.1

RPVertical-stepper 0.0.1

测试测试
语言语言 Objective-CObjective C
许可 MIT
发布最后发布2014年12月

Rob Phillips维护。



  • Rob Phillips

Stepper Example

这是一个简单的垂直步进控制,类似于 UIStepper 控件的功能。我个人觉得苹果只推出水平步进控制是一件目光短浅的事情,因此创建了它来弥补这个不足。

注意:RPVerticalStepperUIControl 的子类,因此它继承了一个典型控件对象的全部特性。

选项

  • 使用浮点数,因此您的输出可以是浮点值,或者您可以通过使用 NSStringstringWithFormat 方法来更改精度,显示为整数。
  • 为步进器设置最小和最大值。当步进器达到这些限制之一时,它会自动禁用按钮,防止用户超过限制。
  • 启用自动重复以保持对按钮的按压,从而使数值持续增加或减少。
  • 更改自动重复间隔,以便步进器的变化速度更快或更慢。
  • 您可以通过 NIB/Storyboard 或程序的方式来添加控件。

公共属性(可覆盖)

  • value(CGFloat,默认为 1):步进控制器的当前值
  • minimumValue(CGFloat,默认为 1):步进控制器值可能的最小值(在禁用递减按钮之前)
  • maximumValue(CGFloat,默认为 99):步进控制器值可以可能的最大值(在禁用递增按钮之前)
  • stepValue(CGFloat,默认为 1):当按下递增或递减按钮时,值为多少改变
  • autoRepeat(BOOL,默认为 YES):设置步进器是否应保持更改值,只要用户按下控件
  • autoRepeatInterval(CGFloat,默认为 0.5 秒):设置自动重复更改步进器值的时间间隔

更改回调选项

  • 以标准方式使用控件,并在 Interface Builde 中将 IBAction 连接到 Value Changed 事件
  • 或者,使您的视图控制器遵守 RPVerticalStepperDelegate 协议,然后使用 stepperValueDidChange: 方法来获取步进器值何时更改
  • 上述两种方法在示例项目中均有展示

快速示例

代码库附带了一个示例项目

  • 例子:一个简单的例子,展示如何以两种不同的方式使用步进控制器

这里是一个基本示例,假设你已经将控件添加到 NIB 或 Storyboard 文件中

.h 头文件中

#import <UIKit/UIKit.h>
#import "RPVerticalStepper.h"

@interface ViewController : UIViewController

@property (nonatomic, weak) IBOutlet UILabel *stepperLabel;
@property (nonatomic, weak) IBOutlet RPVerticalStepper *stepper;

@end

.m 实现文件中

#import "ViewController.h"

@implementation ViewController

- (void)viewDidLoad
{
    [super viewDidLoad];

    // Set some different defaults
    self.stepper.value = 1.0f;
    self.stepper.minimumValue = -100.0f;
    self.stepper.maximumValue = 100.0f;
    self.stepper.stepValue = 5.0f;
    self.stepper.autoRepeatInterval = 0.1f;
}

// This is called from the control event hooked up to the control in the Storyboard
- (IBAction)stepperDidChange:(RPVerticalStepper *)stepper
{
    self.stepperLabel.text = [NSString stringWithFormat:@"%.f", stepper.value];
}
@end

许可证

基本上,此代码可以在商业和非商业项目中免费使用,无需署名。

有关更多详细信息,请参阅 LICENSE 文件。