0
我有一個UILabel,我需要從整數中獲取值,所以我可以將它保存到我的核心數據對象,但我不斷收到此錯誤,在這一點失敗。傳遞'setQuantity:'的參數1使得整型指針沒有轉換
PurchaseOrderItem *newPOItem = (PurchaseOrderItem*) [NSEntityDescription insertNewObjectForEntityForName:@"PurchaseOrderItem" inManagedObjectContext:managedObjectContext];
int qty = [qtyTextField.text integerValue];
[newPOItem setProductName:productName.text];
[newPOItem setDescription:productDescription.text];
[newPOItem setPrice:[NSDecimalNumber decimalNumberWithString: retailPrice.text]];
[newPOItem setQuantity:qty];
[newPOItem setPurchaseorder:newEntity];
if (![managedObjectContext save:&error]) {
// Handle the error.
NSLog(@"%@",error);
}
編輯: 這是我最終的解決方案 - 似乎完全荒謬的,但它的工作原理:
NSDecimalNumber *price = [NSDecimalNumber decimalNumberWithString: [retailPrice.text stringByReplacingOccurrencesOfString:@"$" withString:@""]];
NSNumber *qty = [NSNumber numberWithInt: [qtyTextField.text integerValue]];
NSDecimalNumber *itemSubTotal =[price decimalNumberByMultiplyingBy:[NSDecimalNumber decimalNumberWithDecimal:[qty decimalValue]]];
就是這樣,人的學習所有的不同的方式處理字符串和數字工作是Objective-C的困惑 - 謝謝! – Slee 2010-07-12 21:49:10
現在我有一個NSDecimalNumber和一個NSNumber,我需要將這兩個想法相乘? – Slee 2010-07-12 21:52:09
我對NSDecimalNumber不熟悉。是否有一個原因,而不是使用浮動的NSNumber?如果你使用NSNumbers,你可以這樣做: NSNumber結果= [NSNumber numberWithFloat:[a floatValue] * [b floatValue]]; – 2010-07-12 22:04:43