2

削除の編集をサポートするテーブルビューがあります。編集モードの場合、Tableview は複数選択をサポートします。選択したセルの数に応じて削除ボタンを有効または無効にしたい。少なくとも 1 つのセルが選択されている場合は、削除ボタンを有効にします。iPhoneのメールアプリに似ています。セルを選択すると、編集モードで didSelectRowMethod が呼び出され、削除ボタンが有効になります。しかし、選択したセルをもう一度タップして選択を解除すると、didSelectRow は呼び出されません。そのため、削除ボタンを無効にすることはできません。セルが編集モードで選択解除されている場合、どのように知り、どこでコントロールを取得するか知っていますか?

ありがとう。

4

4 に答える 4

2

ここで、編集モードかどうかを確認する方法を確認できます。設定を忘れないでくださいtableview.delegate=self;

-(void)tableView:(UITableView *)tableView didDeselectRowAtIndexPath:(NSIndexPath *)indexPath{
      if ([tableView isEditing]) {
                 NSLog(@"tableview is editing");      
            }else{
                 NSLog(@"tableview is not editing");   
              }

}
于 2013-01-29T20:30:32.393 に答える
0

私自身の質問に答えます。UITableviewに-と呼ばれるデリゲートメソッドがあることがわかりました

- (void)tableView:(UITableView *)tableView didDeselectRowAtIndexPath:(NSIndexPath *)indexPath

この方法では、選択解除を知ることができます。

于 2013-01-29T19:58:03.607 に答える
0

ドキュメントから:
selected
セルが選択されているかどうかを示すブール値。
@property(nonatomic, getter=isSelected) BOOL selected
ディスカッション
選択は、ラベル、画像、および背景の外観に影響します。セルの選択状態が YES に設定されている場合、選択されたセルの背景をタイトルが白で描画されます。デフォルト値は NO です。このプロパティを使用して選択状態を YES に設定すると、新しい状態の外観への遷移はアニメーション化されません。アニメーション化された選択状態遷移については、setSelected:animated: (page 26) メソッドを参照してください。

于 2013-01-29T19:51:45.150 に答える