代码之家  ›  专栏  ›  技术社区  ›  Slee

传递“setQuantity:”的参数1将从整数生成指针,而不进行强制转换

  •  0
  • Slee  · 技术社区  · 15 年前

    我有一个UILabel,我需要从中获取一个整数的值,这样我就可以将它保存到我的核心数据对象中,但是我一直在得到这个错误和失败。

    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]]]; 
    
    1 回复  |  直到 15 年前
        1
  •  3
  •   Bryan Kyle    15 年前

    我敢打赌 PurchaseOrderItem 声明为 NSNumber NSInteger

    [newPOItem setQuantity: [NSNumber numberWithInt: qty]];