グループ化されたUITableViewsは、詳細ビューコントローラがプッシュされた後にUITableViewControllerが再度表示されるなど、プレーンなUITableViewsと同じ方法で行の選択解除を自動的にアニメートするようには見えませんポップ。ただし、iPhoneの設定アプリはこの動作を実装するように見えます。deselectRowAtIndexPathはグループ化されたUITableViewには影響しません
私は私のグループ化のUITableViewControllerクラスのviewWillAppearメソッドで動作を実装しようとしたが、それは単に何の効果もありません:
- (void)viewWillAppear:(BOOL)animated {
[super viewWillAppear:animated];
//If returning from an edit then animate the deselection of the previously selected row
if ([self currentIndexPath] != nil)
{
[[self tableView] deselectRowAtIndexPath:[self currentIndexPath] animated:YES];
[self setCurrentIndexPath:nil];
}
...
[self currentIndexPath]
の行やセクションのプロパティは私のUITableViewに応じて常に正しいと有効です。行の選択解除はまだアニメ化されません。
[[self tableView] deselectRowAtIndexPath:[[self tableView] indexPathForSelectedRow] animated:YES];
してくださいは、誰かがこの動作が実装されている方法についていくつかの光を当てるために助けることができる:私も再び成功せず、以下を使用して行の選択を解除しようとしましたか?
こんにちはクリスチャンは、私のクラスはので、私はそれがのtableViewだ使いのUITableViewControllerを継承しています。インデックスパスは間違いなく正しいです。セクションと行は、常に選択されたテーブルセクションと行に関連しています。私は、サードパーティ製の多くのアプリケーションもこのように動作しないが、Appleのアプリケーションは動作することに気付いた。グループ化されたUITableViewでこれが動作しましたか? –
私は10分前にテストしました;) - > http://www.karativ.de/deselectrow.zip – cweinberger
ありがとうございました。私の実装は.xibを使用しないので、Interface Builderがそれを実装するためのものを生成していると仮定することができます。テーブルビューをプログラムで設定するときには詳細がありません。 –