我在Xcode上收到错误消息 - Objective C。
指向接口“UILabel”的指针算法,该接口不是此体系结构和平台的常量。
if([self checkforwin]){
NSString*winner = nil;
if (playertoken==1)
winner =@"Player 2 Wins";
_result1 = _result1+1
else if (playertoken==2)
_result2 = _result2 +1
winner =@"Player 1 Wins";
UIAlertView *alert = [[UIAlertView alloc]
initWithTitle:@"Result"
message: winner
delegate:nil
cancelButtonTitle:@"Ok"
otherButtonTitles: nil];
[self resetboard];
[_audioPlayer play];
[alert show];
任何想法如何摆脱它们?
错误显示在result1和result2上。试图为我的游戏添加分数。
答案 0 :(得分:1)
使用条件时使用括号。也不要将字符串设置为nil
,使用空字符串@""
if([self checkforwin]){
NSString *winner = @"";
if (playertoken==1) {
winner =@"Player 2 Wins";
_result1 = _result1 + 1;
}
else if (playertoken==2) {
winner =@"Player 1 Wins";
_result2 = _result2 + 1;
}
UIAlertView *alert = [[UIAlertView alloc]
initWithTitle:@"Result"
message: winner
delegate:nil
cancelButtonTitle:@"Ok"
otherButtonTitles: nil];
[self resetboard];
[_audioPlayer play];
[alert show];
}
答案 1 :(得分:0)
您正尝试向UILabel
添加1。您需要一个整数变量来执行增量。将_result 1和2声明为int
类型变量或声明一个int变量并递增它,并将其传递给UILabel
.text属性
_result1 = _result1+1
这里_result1必须是整数变量。
你需要这样的东西: 将result1声明为int,
@property(assign) int result1;
这条线应该没问题
_result1=_result1+1;