我有一个UIPickerView以公斤为单位输入重量。 它允许输入0.0到299.9 kg的重量。
为了方便起见,我将选择器配置为三个组件,一个组件用于数百个(0-2),一个组件用于十个(0-99),最后一个组件用于一公斤的分数(.0到.9)。 我想知道将组件的输入来回转换为简单的float或NSNumber的最佳实践是什么。
我知道我可以简单地独立保存所有三个值,但是我认为必须有一种更优雅的方法。
-(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);
}
您可以用total来做您想做的事情:)