1

ストーリーボードを使用してカスタム コレクション ビューを実装しました。十字ボタンと背景画像を追加しました。

コレクション ビューをリロードすると、クロス ボタンが管理者には非表示になり、他のメンバーには表示されますが、これは初めて完全に機能します。

タグ btn.tag = indexpath.row を設定し、ユーザーを削除する機能を割り当てました。

ユーザーを削除し、コレクション ビューをリロードするときにオブジェクトを配列から削除した後、管理者がボタンを非表示にするために追加した条件が機能せず、コレクション ビューのすべてのセルにクロス ボタンが表示されます。

誰か助けてください。

        if ([user.type isEqualToString:@"admin"])

        {        [removeBtn setHidden:YES];

                [removeBtn setEnabled:NO];

        }else {

     [removeBtn setHidden:NO];

        [removeBtn setEnabled:YES]; }

コレクション ビューの結果を初めてリロードする

ここに画像の説明を入力

コレクションビューの結果をリロードするメンバーの削除後 ここに画像の説明を入力

[削除] ボタンを押した後のデバッグ ログですが、管理項目の画像にクロスが表示されるようになりました。

2016-02-03 11:35:03.620 STT[32132:5629002] Col View 2usertype>    admin
2016-02-03 11:35:03.620 STT[32132:5629002] Hide cross from Admin
2016-02-03 11:35:12.944 STT[32132:5629002] Col View 2usertype>   
2016-02-03 11:35:12.944 STT[32132:5629002] Show cross for Mem
2016-02-03 11:35:17.799 STT[32132:5629002] Col View 2usertype>   member
2016-02-03 11:35:17.800 STT[32132:5629002] Show cross for Mem
4

2 に答える 2

0

これがあなたを助けることを願っています。//クラス登録

[self.collectionView registerClass:[CustomCell class] forCellWithReuseIdentifier:@"CustomCellIdentifier"];

cellForItemAtIndexPath:(NSIndexPath *)indexPath

// セル識別子を設定

CustomCell *cell = (CustomCell *)[collectionView dequeueReusableCellWithReuseIdentifier: CustomCellIdentifier forIndexPath:indexPath];
  User *objUser = [self.UserArray objectAtIndex:indexPath.row];
  [cell updateCellData:objUser]; // set tag here and hide/show + button
于 2016-02-02T12:23:01.770 に答える