3

UITableView でセルを選択すると、約 15% の確率で、セルのハイライトがすばやく点滅し、didSelectRowAtIndexPath が呼び出されないという奇妙な問題があります。残りの時間は正常に動作しています。

どのように選択されているか (指の爪が速い/遅いなど) をテストしましたが、そうではないようです。セミランダムに見えます。

これを引き起こしている可能性のある考えはありますか?

IOS 6.x

【追記】今までコメントありがとうございます。

クリック中にマウス (シミュレーター) が移動している場合、問題が再現される可能性があります。テーブルが .scrollEnabled = false に設定されていても、まだ発生しています。また、「クイック」の場合、didHighlightRowAtIndexPath は起動しますが、didSelectRowAtIndexPath は起動しません。

IOS 5.x でも同じことが起こります...

[結論]

さて、テーブルのスクロールがオフになっていることがわかり、「移動タップ」でさらにうるさいようです。スクロールをオンにすると、実際には「移動タップ」のうるさいことが少なくなりました。ほぼ同じことを言っていることがわかった他の投稿がいくつかありました。これは、スクロールが無効になっており、選択のない「クイック ハイライト」を生成するテーブル ビューの奇妙な結論です。これが、この「問題」を回避するために IOS 6 に didHighlight を追加した理由のようです。

4

3 に答える 3

0

何らかの理由でセルが無効になっているようです。cell.enabled = TRUE;セルが表示される直前に設定してみて、何かが修正されるかどうかを確認してください。

于 2013-05-23T20:52:51.767 に答える
0

指をわずかに上下に動かしているため、表がスクロールしています。アイテムが選択されなくなり、ハイライトが消えます。tableView:didHighlightRowAtIndexPath で行を追跡し、 tableView:didUnhighlightRowAtIndexPath: でアクションを実行することで、以前にこれに対処しました。UIのオプションである場合、tableViewをスクロールできないようにすることで問題を解決できる場合もあります。

于 2013-05-23T21:57:41.023 に答える