2014-01-12 13 views
5

enter image description hereiOS7テーブルビュー行のベストプラクティスを削除

メッセージアプリでテーブルビューの行を削除する方法のテキストブックの例があります。 これは、タスクを実行するために3つの別々のビューを使用するように見えます。

私の質問は、これを達成するためのショートカットがあるかどうか、または3つの画面を作成して、目立たないようにするかどうかについてです。

多くのありがとうございます。

答えて

3

私は、あなたは、3つの異なるビューで何を意味するのか本当にわからないんだけど、これはUITableViewから行を削除する例により溶液のようになります。ストーリーボードから行を削除

http://www.appcoda.com/model-view-controller-delete-table-row-from-uitableview/

+0

まず、これを追加します。 –

+0

ようこそ。問題が修正された場合は、トピックを解決してマークアップしてください。それ以上のトラブルがあれば、尋ねてください。 – fahu

12

はかなりあります簡単。 TableViewデータソースには2つのメソッドを継承するだけです。

- (BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath { 
    return YES; 
} 

第二には、テーブルビューから行を削除されています:

- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath { 
    [tableView deleteRowsAtIndexPaths:[NSArray arrayWithObject:indexPath] withRowAnimation:UITableViewRowAnimationLeft]; 
} 
+0

私を混乱させていた行を削除するのではなく、ビューをユーザーに提示する方法です。番号を使用するのか、それとも1つを使用できますか? –

4

のtableViewから任意の行を削除するときに従うべき手順、次のとおりです。

    行を削除することができるならばまず語っています
  1. 行のindexPathを削除してください。

  2. tableView DataSourceのデータモデルから行を削除します。

[yourDataModel removeObjectAtIndex:indexPath.row];

  1. tableViewを再読み込みして画面を更新します。

[tableView reloadData];

詳細情報が必要な場合は教えてください。

6

必要なUITableViewDelegateメソッドとUITableViewDataSourceメソッドを実装する必要があります。私はそれを通じて私のように動作します - - 私が探していたが、見つからなかっただけで何のおかげ

- (BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath 
{ 
    return YES; 
} 

- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath 
{ 
if (editingStyle == UITableViewCellEditingStyleDelete) 
{ 
    [self.dataArray removeObjectAtIndex:indexPath.row]; 
    [tableView reloadData]; 
} 
} 
関連する問題