@interface CartesManager : NSObject {
NSMutableArray *carteMan ;
NSInteger indexCarteCourante ;
NSInteger numImage ;
BOOL isEditable ;
}
我想更改数组“Carteman”的最后一个单元格的内容。我拿了数组的最后一个框。
-(void)DoneButton :(id)sender {
int Valeur ;
Valeur = ([[CartesManager sharedInstance].carteMan count] -1 );
Carte *uneCarte= [[[CartesManager sharedInstance].carteMan]objectAtIndex:Valeur]; //Expected ":" before ";" token
switch (indexsectioncurrent) {
case 0:
uneCarte.titre = textField.text ;
break;
case 1:
uneCarte.nom = textField.text ;
break;
case 2:
uneCarte.prenom = textField.text ;
break;
case 3:
uneCarte.adresse = textField.text ;
break;
case 4:
uneCarte.phone = textField.text ;
break;
case 5:
uneCarte.mobile = textField.text ;
break;
case 6:
uneCarte.mail = textField.text ;
break;
case 7:
uneCarte.site = textField.text ;
break;
case 8:
uneCarte.commentaire = textField.text ;
break;
default:
break;
}
uneCarte.image1 = image1CarteV ;
uneCarte.image2 = image2CarteV;
[self dismissModalViewControllerAnimated:YES];
Carte *uneCarte= [[[CartesManager sharedInstance].carteMan]objectAtIndex:Valeur]; //Expected ":" before ";" token**
答案 0 :(得分:5)
访问房产时不需要[]:
Carte *uneCarte= [[CartesManager sharedInstance].carteMan objectAtIndex:Valeur];
答案 1 :(得分:1)
对于初学者,请在.carteMan]
和objectAtIndex:
之间加一个空格。此外,您尚未明确表示carteMan
是一个财产。您可能需要添加:
@property(retain, nonatomic) NSMutableArray *carteMan;
到您的头文件,并且:
@synthesize carteMan;
到您的实施文件。
答案 2 :(得分:1)
当您按照执行顺序查看导致错误的行时,会发生以下情况:
[CartesManager sharedInstance];
这将返回CartesManager对象result.carteMan;
这将获取第一步的结果并获取名为carteMan
的属性,返回一个NSMutableArray对象[result];
这是一条不完整的讯息。它有一个接收器,但没有命令。我认为您根本不想执行此步骤,因为您似乎要在步骤2中调用阵列上的objectAtIndex:
。要解决您的问题,请从
更改您的代码Carte *uneCarte= [[[CartesManager sharedInstance].carteMan]objectAtIndex:Valeur];
到
Carte *uneCarte= [[CartesManager sharedInstance].carteMan objectAtIndex:Valeur];