から画像を削除する、と私は、ユーザーが自分のギャラリーから写真を削除持っているオプションを実装しています。これを達成するために、私は各画像の上に目に見えないボタンを配置することに決めました。ユーザーが「編集」ボタンを押すと、各ピクチャの隠し削除ボタンがアクティブになります。単純化のため、それぞれの隠しボタンに同じIBOutletを使用しています。Interface Builderで各ボタンに適切なタグを付けました。ユーザーが画像上のボタンをタップすると、実際に削除するかどうかを確認する警告ビューが表示されます。 [はい]をクリックすると、removeObjectAtIndexが呼び出されます。私はフォトギャラリーのように振る舞うのアプリに取り組んでいるUI
- (IBAction)deleteButtonPressed:(id)sender {
NSLog(@"Sender is %@", sender);
UIAlertView *deleteAlertView = [[UIAlertView alloc] initWithTitle:@"Delete"
message:@"Are you sure you want to delete this photo?"
delegate:self
cancelButtonTitle:@"No"
otherButtonTitles:@"Yes", nil];
[deleteAlertView show];
int imageIndex = ((UIButton *)sender).tag;
deleteAlertView.tag = imageIndex;
}
- (void)alertView: (UIAlertView *) alertView
clickedButtonAtIndex: (NSInteger) buttonIndex
{
if (buttonIndex != [alertView cancelButtonIndex]) {
NSLog(@"User Clicked Yes. Deleting index %d of %d", alertView.tag, [array count]);
[self.array removeObjectAtIndex: alertView.tag];
NSLog(@"After deleting item, array count = %d", [array count]);
alertView.tag.image = nil;
}
[self.user setObject:self.array forKey:@"images"];
}
をここでの問題はalertView.tag.image
である:ここでは私が使用しているコードがあります。 「メンバー参照の基本型NSInteger(別名int)は構造体または共用体ではありません。このコードは配列から画像を削除しますが、UIからも画像を削除する必要があります。そのalertView.tag.image
がトリックを行っているでしょう。私はこれを行う方法を見当がつかない、私はまだObjective-Cのへの新たなんだと私は読んだ本は、このすべてのいずれかをカバーしていません。また、私はUIを更新する可能性がどのように思っていました?画像を削除した後
おかげであなたの答えのためにたくさん、私はそのコードXcodeの状態に追加するときに「プロパティ 'image'は型のオブジェクトには見られないものの、'のUIView * '。(UIImageView *)。私はそれを編集してみましょう。素晴らしい – John
キャスト、それを、あなたの助けてくれてありがとう! – Vignesh
をする – John