は私が配列からindexPath.rowを取得できません(エラーindexPath宣言されていません)?
@interface DevicePreferencesController : UITableViewController <UIAlertViewDelegate>{
NSArray *plist;
UITextField *deviceName;
}
この配列は、URL
からplistのデータをロードするために使用され、私の.hにNSArrayのを宣言し、これは私がでそれを示して、私は
plist:(
{
category = 11;
id = 1;
name = light1;
},
{
category = 11;
id = 5;
name = window;
},
{
category = 12;
id = 2;
name = dimmer2;
},
{
category = 23;
id = 3;
name = win;
}
)
を得たplistのですテーブルビュー
これは、TextFieldでalertViewをポップアップ表示されます、それはplistの
でデータの名前を変更し、ここalertView
- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex {
if ([alertView tag]==1) {
if (buttonIndex == 1){
[request setPostValue:[[self.plist objectAtIndex:indexPath.row] valueForKey:@"id"] forKey:@"id"];
[request setPostValue:deviceName.text forKey:@"name"];
[request startSynchronous];
}
}
}
ためのボタンアクションであるしかし、私はここでエラー「indexPath」宣言されていないだことができます!
なぜですか? plistが配列で、配列からindexPathを取得できないのはなぜですか?
申し訳ありませんが、私は何を意味するのか知っていますが、いくつかのサンプルコードを提供できますか?または、indexPathを取得するためにグローバル変数が必要ですか? –
はい、indexPath値を操作する必要がある場合は、グローバル変数に格納する必要があります。 – MetaImi