2012-01-02 79 views
1

如何連接UIsteppertextField?當我連接增量和減量,但是,當我直接輸入數字到textfield之後嘗試使用步進器增量時,數值將從最小值stepper開始。我想繼續從textField的價值。UISteppper連接文本字段

+0

你是什麼意思的步進? – Sarah 2011-12-29 05:28:58

+0

步進器是Xcode 4.2.1中的一個控制器,它是一個遞增或遞減控制。 – 2011-12-29 05:58:49

+0

Plese幫我.. – 2012-01-09 03:42:44

回答

1

iOS開發沒有像你想要的那樣的綁定。基本上你必須決定你想要存儲你的值。您可以將您的值存儲在步進器,文本框或其他一些變量中。其次,但同樣重要的是,你的步進目標函數都是錯誤的。您的問題是每次啓動stepperPressed1:方法時都要重新設置步進器。我希望能夠連接到您步進的valueChanged事件,並且我會假設它是。

讓我們暫時假設您正試圖將步進值存儲在步進器中。

您應該只設置一次步進器,可能在您的viewDidLoad方法中。然後在值更改時讀取新值並將其寫入文本字段。

例如:

-(void)viewDidLoad{ 
    [super viewDidLoad]; 
    [self.stepper setMinimumValue:0]; 
    [self.stepper setContinuous:YES]; 
    [self.stepper setWraps:NO]; 
    [self.stepper setStepValue:1]; 
    [self.stepper setMaximumValue:300]; 
    self.txtField.text=[NSString stringWithFormat:@"%g",self.stepper.value]; 
} 
-(IBAction)stepperPressed1:(id)sender{ 
    self.txtField.text=[NSString stringWithFormat:@"%g",self.stepper.value]; 
} 

現在就設定基於什麼是在文本框輸入的步進值。你需要做的是當用戶輸入一個你想獲得該值的值並將其分配給步進器。您可以將函數連接到textField的「退出結束」事件。該功能看起來像這樣:

-(IBAction)didEndOnExit:(id)sender { 
    self.stepper.value = self.txtField.text.doubleValue; 
    self.txtField.text=[NSString stringWithFormat:@"%g",self.stepper.value]; 
} 
+0

它不工作。 – 2012-03-14 06:15:40

+0

什麼不工作? – NJones 2012-03-14 17:48:10

+0

如果從textField獲得值,那麼我就不會減值。 – 2012-03-15 04:23:30