0

私はフォト ギャラリーのように動作するアプリに取り組んでおり、ユーザーがギャラリーから写真を削除するオプションを実装しています。これを実現するために、各画像の上に非表示のボタンを配置することにしました。ユーザーが「編集」ボタンを押すと、各画像の非表示の削除ボタンがアクティブになります。簡単にするために、非表示の各ボタンに同じ IBOutlet を使用し、Interface Builder で各ボタンに適切にタグを付けました。ユーザーが写真の上でボタンをタップすると、本当に削除するかどうかを尋ねるアラート ビューが表示されます。お客様が [はい] をクリックした場合、私は に電話しますremoveObjectAtIndex。私が使用しているコードは次のとおりです。

- (IBAction)deleteButtonPressed:(id)sender {
    UIAlertView *deleteAlertView = [[UIAlertView alloc] initWithTitle:@"Delete"
                                                              message:@"Are you sure you want to delete this photo?"
                                                             delegate:self
                                                    cancelButtonTitle:@"Yes"
                                                    otherButtonTitles:@"No", nil];
    [deleteAlertView show];
    int imageIndex = sender.tag;
    deleteAlertView.tag = imageIndex;

}

- (void)deleteAlertView:(UIAlertView *)deleteButtonPressed
       didDismissWithButtonIndex:(NSInteger)buttonIndex {
    if (buttonIndex != [deleteButtonPressed cancelButtonIndex]) {

        [array removeObjectAtIndex:deleteButtonPressed.tag];

    }
  [self.user setObject:array forKey:@"images"];
}

私が得ているエラーは強調表示されており、「タイプのオブジェクトのint imageIndex = sender.tag;プロパティが見つかりません」と述べています。このエラーに関する調査を行っていますが、役立つ情報が見つかりません。私はまだプログラミングに慣れていないので、これを修正する方法がまったくわかりません。どんな助けでも大歓迎です、ありがとう!tag__strong id

4

1 に答える 1

4

送信者を適切なタイプにキャストする必要があります。たとえばint imageIndex = ((UIView*)sender).tag;

于 2012-04-03T21:58:26.083 に答える