2013-07-01 24 views
0

我有一个UIPickerView输入重量(kg)。它允许输入从0.0到299.9公斤的重量。使组件数量不足:最佳做法格式

为了方便起见,我配置了三个组件,一个用于数百个(0-2),一个用于十个(0-99),最后一个用于一个千克的小数部分(.0至0.9)。我不知道将组件的输入转换为简单的float或NSNumber的最佳做法是什么。

我知道我可以简单地保存所有三个值,但我认为必须有更优雅的方式。

回答

4
-(void) pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component { 
NSInteger hundreds = [pickerView selectedRowInComponent:0] * 100; 
NSInteger tens = [pickerView selectedRowInComponent:1] * 10; 
float oneTenth = [pickerView selectedRowInComponent:2] * 0.1f; 

NSNumber *total = @(hundreds+tens+oneTenth); 
} 

你可以做你想做的,总:)

+0

谢谢,这是一个脚踏实地的做法。顺便说一句,这十个不需要相乘。也许我的术语在这里有误导。 – ff10

+0

是的,你是对的:)我的坏,我没有看到0-99 – torip3ng