![](/img/trans.png)
[英]Incompatible pointer to integer conversion sending 'id' to parameter of type 'int'
[英]incompatible integer to pointer conversion “int” to parameter type of “id”
- (void) changeState
{
if ([_buttonChangeState.title isEqual: @"Active"])
{
PFUser *user = [PFUser currentUser];
user[@"active"] = FALSE;
user[@"party"] = @"";
[user saveInBackgroundWithBlock:^(BOOL succeeded, NSError *error)
{
if (error)
{
_statusFailed = [[UIAlertView alloc]initWithTitle:@"" message:@"Status Change Error, Try Again" delegate:self cancelButtonTitle:@"Retry" otherButtonTitles:@"Close", nil];
_statusFailed.cancelButtonIndex = 0;
[self.view addSubview:_statusFailed];
}
else
{
[_buttonChangeState setTitle:@"Taking A Break"];
}
}];
}
if ([_buttonChangeState.title isEqual:@"Taking A Break"])
{
PFUser *user = [PFUser currentUser];
user[@"active"] = TRUE;
[user saveInBackgroundWithBlock:^(BOOL succeeded, NSError *error)
{
if(error)
{
[self.view addSubview:_statusFailed];
}
}];
}
}
我試圖為Parse用戶對象的“ active”關鍵字段分配一個bool值,但是由於某些原因,當嘗試將user [@“ active”]設置為TRUE布爾值時,我收到了錯誤“指針轉換不兼容的整數”參數類型為“ id”的“ int”。 僅當將其設置為TRUE時,才會發生這種情況,而將其設置為FALSE則不會出錯。 另外,將其設置為0很好,但是有1個錯誤。 我不知道為什么我要分配哪個布爾值很重要。 任何想法將不勝感激。 謝謝
您不能將BOOL添加到(有效的字典)對象中。 用戶對象期望接收另一個對象,因此您的BOOL應該包裝在NSNumber
實例中:
user[@"active"] = @YES; // NSNumber literal syntax
要么
user[@"active"] = [NSNumber numberWithBOOL:YES];
這適用於YES(真)和NO(假)情況。
另外,您不應該將_statusFailed
添加為子視圖。 調用其show
方法以顯示警報視圖。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.