我是编码的新手,我需要一些非常简单的帮助。我想创建一个Youtube View / Money计算器,所以我需要获取视图的数量并将其乘以0.4 ish,以根据视图获得视频制作量的粗略估计。
我的main.storyboard看起来像这样:我有一个UItextField
(应该得到视图的数量,一个计算按钮(做0.4倍数)和一个标签来显示结果。
这是我的viewcontroller.h代码:
int NumberOfViews;
@interface ViewController : UIViewController
{
IBOutlet UILabel *result;
}
- (IBAction)Calculate:(id)sender;
@property (weak, nonatomic) IBOutlet UITextField *NumberOfViews;
现在这是我的viewcontroller.m代码:
-(IBAction)Calculate:(id)sender{
NumberOfViews = NumberOfViews * 0.4;
result.text = [NSString stringWithFormat:@"Money made %i", NumberOfViews];
}
我很确定这是因为来自UITextField
的视图数量没有链接到0.4乘法也就是计算方法,因为结果总是0
但是我如何链接那些?这是最简单的事情,但无法弄明白!
我想从UITextField
中取一个数字并将其乘以0.4并显示结果......就是这样。非常感谢一点帮助..谢谢!
答案 0 :(得分:2)
更新2 似乎@ 0x7fffffff认为他误读了,他的回答是正确的,你将你的(全局 - 那个坏!)整数乘以浮点数而%i打印一个整数。 @ 0x7fffffff请重新发回你的答案:-P
<强>更新强> 唉,我刚看到你有两个叫做“NumberOfViews”的变量。看,这就是为什么我最初要求你检查编码风格指南;-) @ 0x7fffffff有正确的答案。
原帖
您将文本字段与数字相乘。
做类似的事情:
float numViews = [NumberOfViews.text intValue] * 0.4
result.text = [NSString stringWithFormat:@"Money made %f", numViews];
但是你需要确保文本字段中的文本实际上是一个数字。
另外,请检查https://developer.apple.com/library/mac/documentation/Cocoa/Conceptual/CodingGuidelines/CodingGuidelines.html下的编码样式指南,“NumberOfViews”是文本字段的错误名称。
答案 1 :(得分:1)
您将int
乘以double
,然后将结果存回int
。由于int不能存储小数,因此会发生舍入。要解决此问题,您应该更改numberOfViews的声明以使用float
类型或double
类型。
float NumberOfViews;
然后,您需要将格式化字符串中使用的格式说明符更改为浮点数的%f
。
result.text = [NSString stringWithFormat:@"Money made %f", numberOfViews];
此外,您应该将实例命名为以小写字母开头,以帮助将它们与类区分开来。