2012-04-17 53 views
0

我有兩個UILabels顯示數字。他們通過UISteppers更新。我想包括第三個UILabel,當用戶按下UISteppers中的任何一個時,它計算UILabel1UILabel2之間的差值。 (這兩個UILabels因此是.text)將數字從UILabels中劃分爲小數 - xcode

我知道如果兩個UISteppers這兩個IBAction都應該完成,但我在思考如何編寫該方法時遇到困難。

有人知道如何編寫該方法嗎?

謝謝。

更新UILabel1

- (IBAction)smashChanged:(id)sender { 

self.smashLabel.text = [NSString stringWithFormat:@"%d", 
         [[NSNumber numberWithDouble:[(UIStepper *)sender value]] intValue]]; 
} 
+0

我更新label1和由UIStepper標籤2。因此代碼非常相似。請參閱上文...謝謝。 – 2012-04-17 19:09:35

回答

3

可以使用的NSString方法floatValue(或intValue):

float value1 = [self.label1.text floatValue]; 
float value2 = [self.label2.text floatValue]; 
float value = (value2 == 0.0) ? 0 : value1/value2; // This gives 0 if value2 is equal to 0 
self.label3.text = [NSString stringWithFormat:@"%.2f", value]; // 2 decimal places 
+0

謝謝。這就像一個魅力。此刻,當它是1/0標籤3顯示'inf'時。有沒有辦法顯示0,而不是inf?另外,它可以顯示2位小數位嗎?謝謝。 – 2012-04-17 19:49:03

+0

查看我的更新回答。 – sch 2012-04-17 19:53:14

+0

這工作得很好。最後一個問題,有沒有一種方法可以在值後加'%'符號?所以用戶知道它是一個百分比。或者只是在%上放置一個標籤旁邊的標籤?謝謝。 – 2012-04-17 23:42:39