iOS中的UIStepper數(shù)值加減器用法指南
UIStepper可以連續(xù)增加或減少一個(gè)數(shù)值??丶耐庥^是兩個(gè)水平并排的按鈕構(gòu)成,一個(gè)顯示為“+”,一個(gè)顯示為“-”。
該控件的一個(gè)有趣的特征是當(dāng)用戶按住“+”,“-”按鈕時(shí),根據(jù)按住的時(shí)間長(zhǎng)度,空間值的數(shù)字也以不同的數(shù)字改變。按住的時(shí)間越長(zhǎng),數(shù)值改變的越快??梢詾閁IStepper設(shè)定一個(gè)數(shù)值范圍,比如0-99. 它的顯示效果如下:
1. 屬性說(shuō)明
value: 當(dāng)前所表示的值,默認(rèn)為0.0;
minimumValue: 最小可以表示的值,默認(rèn)0.0;
maximumValue: 最大可以表示的值,默認(rèn)100.0;
stepValue: 每次遞增或遞減的值,默認(rèn)為1.0;
2.如何判斷加("+")減("-")
(1)通過(guò)設(shè)置一個(gè) double* previousValue; *// *用來(lái)記錄Stepper.value*的上一次值
(2)在對(duì)想操作的對(duì)象進(jìn)行操作后,將Stepper.value = 0
#pragma mark - 設(shè)置UIStepper
- (void)createUIStepper{
UIStepper * stepperButton = [[UIStepper alloc]initWithFrame:CGRectMake(225, 500, 30, 10)];
[stepperButton addTarget:self action:@selector(controlStepperValue:) forControlEvents:UIControlEventValueChanged];
stepperButton.maximumValue = 100.0;
stepperButton.minimumValue = 0.0;
stepperButton.value = INITUISTEPPERVALUE;
stepperButton.stepValue = 1.0;
stepperButton.continuous = YES;
stepperButton.wraps = NO;
stepperButton.autorepeat = YES;
[self.view addSubview:stepperButton];
[stepperButton release];
}
- (void)controlStepperValue:(UIStepper *)stepper{
if (_segment.selectedSegmentIndex == 0) {
if (stepper.value > previousValue) {
CGRect redRect = _redView.frame;
redRect.size.height += 5;
_redView.frame = redRect;
} else {
CGRect redRect = _redView.frame;
redRect.size.height -= 5;
_redView.frame = redRect;
}
previousValue = stepper.value;
}else{
if (stepper.value > previousValue) {
CGRect redRect = _greenView.frame;
redRect.size.height += 5;
_greenView.frame = redRect;
} else {
CGRect redRect = _greenView.frame;
redRect.size.height -= 5;
_greenView.frame = redRect;
}
previousValue = stepper.value;
}
}
3.基本用法整理
初始化控件
UIStepper * step = [[UIStepper alloc]initWithFrame:CGRectMake(100, 100, 100, 100)];
設(shè)置控制器值是否連續(xù)觸發(fā)變化
@property(nonatomic,getter=isContinuous) BOOL continuous;
若設(shè)置為YES,則長(zhǎng)按會(huì)連續(xù)觸發(fā)變化,若設(shè)置為NO,只有在按擊結(jié)束后,才會(huì)觸發(fā)。
設(shè)置長(zhǎng)按是否一直觸發(fā)變化
@property(nonatomic) BOOL autorepeat;
若設(shè)置為YES,則長(zhǎng)按值會(huì)一直改變,若設(shè)置為NO,則一次點(diǎn)擊只會(huì)改變一次值
設(shè)置控制器的值是否循環(huán)(到達(dá)邊界后,重頭開始,默認(rèn)為NO)
@property(nonatomic) BOOL wraps;
設(shè)置控制器的值
@property(nonatomic) double value;
設(shè)置控制器的最大值和最小值
@property(nonatomic) double minimumValue;//默認(rèn)為0
@property(nonatomic) double maximumValue; //默認(rèn)為100
設(shè)置控制器的步長(zhǎng)
@property(nonatomic) double stepValue;
設(shè)置控制器風(fēng)格顏色
@property(nonatomic,retain) UIColor *tintColor;
設(shè)置控制器背景圖片
- (void)setBackgroundImage:(UIImage*)image forState:(UIControlState)state;
獲取背景圖片
- (UIImage*)backgroundImageForState:(UIControlState)state;
通過(guò)左右按鈕的狀態(tài)設(shè)置分割線的圖片
- (void)setDividerImage:(UIImage*)image forLeftSegmentState:(UIControlState)leftState rightSegmentState:(UIControlState)rightState;
獲取分割線圖片
- (UIImage*)dividerImageForLeftSegmentState:(UIControlState)state rightSegmentState:(UIControlState)state;
設(shè)置和獲取加號(hào)按鈕的圖片
- (void)setIncrementImage:(UIImage *)image forState:(UIControlState)state;
- (UIImage *)incrementImageForState:(UIControlState)state;
設(shè)置和獲取減號(hào)按鈕的圖片
- (void)setDecrementImage:(UIImage *)image forState:(UIControlState)state;
- (UIImage *)decrementImageForState:(UIControlState)state;
相關(guān)文章
講解Java中如何構(gòu)造內(nèi)部類對(duì)象以及訪問(wèn)對(duì)象
這篇文章主要介紹了講解Java中如何構(gòu)造內(nèi)部類對(duì)象以及訪問(wèn)對(duì)象,是Java入門學(xué)習(xí)中的基礎(chǔ)知識(shí),需要的朋友可以參考下2015-09-09詳解IOS串行隊(duì)列與并行隊(duì)列進(jìn)行同步或者異步的實(shí)例
這篇文章主要介紹了詳解IOS串行隊(duì)列與并行隊(duì)列進(jìn)行同步或者異步的實(shí)例的相關(guān)資料,IOS中GCD的隊(duì)列分為串行隊(duì)列和并行隊(duì)列,任務(wù)分為同步任務(wù)和異步任務(wù),他們的排列組合有四種情況這里就一一分析下,需要的朋友可以參考下2017-07-07iOS Swift創(chuàng)建代理協(xié)議的多種方式示例
這篇文章主要給大家介紹了關(guān)于iOS Swift創(chuàng)建代理協(xié)議的多種方式,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。2017-12-12UIPageViewController實(shí)現(xiàn)的左右滑動(dòng)界面
這篇文章主要為大家詳細(xì)介紹了UIPageViewController實(shí)現(xiàn)的左右滑動(dòng)界面,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-06-06iOS自定義UICollectionViewFlowLayout實(shí)現(xiàn)圖片瀏覽效果
這篇文章主要介紹了iOS自定義UICollectionViewFlowLayout實(shí)現(xiàn)圖片瀏覽效果的相關(guān)資料,需要的朋友可以參考下2016-03-03簡(jiǎn)單談?wù)刢/c++中#import、#include和@class的區(qū)別
對(duì)于#import,我想做過(guò)iOS開發(fā)的人應(yīng)該都不陌生。在開發(fā)過(guò)程中,當(dāng)我們需要聲明某一個(gè)類時(shí),都需要去引用。而#imclude的話,在我們學(xué)習(xí)C時(shí)就已經(jīng)知道了,他的作用也是引用聲明的意思。在表面上他們的作用似乎都是一樣的。但是在具體功能實(shí)現(xiàn)方式上,還是有著很大的區(qū)別。2018-01-01ios利用正則表達(dá)式判斷手機(jī)號(hào)碼格式是否正確的實(shí)例
下面小編就為大家分享一篇ios利用正則表達(dá)式判斷手機(jī)號(hào)碼格式是否正確的實(shí)例,具有很好的參考價(jià)值。希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2017-11-11