如何从 TextField 获取十进制值并在 Objective C 中使用它进行计算

Posted

技术标签:

【中文标题】如何从 TextField 获取十进制值并在 Objective C 中使用它进行计算【英文标题】:How to get decimal value from TextField and make calculations with it in Objective C 【发布时间】:2018-01-31 17:17:40 【问题描述】:

我对目标 c 真的很陌生,我在文本字段及其值方面遇到了一些问题。我的 ViewController 中有两个 TextField。通过这些 TextFields,我试图获取用户的体重和身高并计算他们的体重指数。我已经在android中编写了下面的代码并尝试将其转换为objective c。

valueWeight = Double.parseDouble(edit_txt_weight.getText().toString());
valueHeight = Double.parseDouble(edit_txt_height.getText().toString());
resulBMI = (valueWeight / (valueHeight * valueHeight)*10000);
txt_vki_resultText.setText(new DecimalFormat("##.##").format(resulBMI)+"");

我的问题是;

    如何从文本字段(键盘类型为小数点)中获取值并将它们转换为十进制数。

    如何在目标 c 中进行计算,当我使用此代码从 Textfields 获取值时遇到一些问题

- (IBAction)btnCalculate:(id)sender NSString *weight = self.editTextKg.text; NSString *height = self.editTextHeight.text;

【问题讨论】:

【参考方案1】:
- (IBAction)btnCalculate:(id)sender 

   double weight = [ self.editTextKg.text doubleValue] 

   double height = [ self.editTextHeight.text  doubleValue];

   double resulBMI = (valueWeight / (valueHeight * valueHeight)*10000);

   txt_vki_resultText.text = [NSString stringWithFormat:@"%.2f",resulBMI];

【讨论】:

您确实应该使用NSNumberFormatterdouble 转换为用户提供的字符串。当然,它也应该用于任何用户输入的数字字符串。

以上是关于如何从 TextField 获取十进制值并在 Objective C 中使用它进行计算的主要内容,如果未能解决你的问题,请参考以下文章

如何从对象类型中动态获取值并在扩展面板角材料中实现?

从数组中获取随机值并在 DOM 中发布

如何从数组中获取值并在zend框架工作中分配给视图

如何从 Access 数据库中获取值并在 C# winforms Devexpress 的 Gridview 中设置?

如何从多个SQL表中获取值并在html / php表中显示?

如何使用 JS 获取不同的值并在 JSON 上求和