問題タブ [prepareforreuse]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
3066 参照

ios - 非表示の UICollectionViewCell を回転後に再描画して、再利用が発生したときに備えて再描画する方法は?

再利用が発生したときに、非表示の UICollectionViewCell を再描画する方法???

私が考えた 1 つのアプローチは、レイアウト セルの prepareForReuse 関数のコードによるものでしたが、必要以上の再描画が発生するため、最適ではありません。

背景:drawRect現在表示されていないが、使用するためにポップアップし、再描画されていない向きの変更後にセルをトリガーする必要があるため、これまでのところ、それprepareForReuseが適切であることがわかります。問題は、すべての「再利用」セルを再描画していることですが、デバイスの以前の向きの位置で作成された最初にポップアップするセルのみを再描画したいだけです。

追加情報:現在、私はこれを行っています:

ViewController で:

レイアウト セル クラス:

上記の prepareForReuse のコードがないとどうなるかの例。向きを変えて少し上にスクロールした直後のスナップショット:

ここに画像の説明を入力

0 投票する
1 に答える
1293 参照

swift - TableView でスクロールすると値が繰り返される

カスタム セルのボタンをタップしてから下 (または上) にスクロールすると、別のセル ボタンもタップされます。ボタン用に作成したボタンアウトレットが無効になっているため、タップされていることがわかります。

MycellForRowAtIndexPathには、セルの reuseIdentifier があります。

私が持っていることを考えると、degueueReusableCellWithIdcellForRowAtIndexPathは必要prepareForReuseですか?カスタム セル ファイルに を追加するprepareForReuseと、セルはデフォルト値に戻ります (明らかに、デフォルト値にリセットしたためです)。問題は、各 indexPath.row の値を保持することです。

これは私が値を照会する方法です:

これはnumberOfRowsInSectioncellForRowAtIndexPath

viewDidLoadこれを上記の super.viewDidLoad()に登録しています

これは、customCell のボタン クエリです。

どんな助けや提案も大きな意味があります。

ありがとうございました。


私が使用した参照リンク:

いくつかのリンクを参照しましたが、それらはobjective-cにあり、役に立ちませんでした:

UICollectionView タップで複数のセルを選択

prepareForReuse メソッドの使用方法

ドキュメントも参照しましたが、あまり役に立ちませんでした。

0 投票する
2 に答える
4573 参照

ios - CollectionViewCell の PrepareForReuse

タップされたセルのラベルを非表示にして、代わりに画像を表示したい。しかし、特定のインデックスを持つセルが既に imageView に設定されている場合にのみ、これを行いたいと考えています。imageViewに設定されているかどうかにかかわらず、セルとストアに対処する最良の方法は何ですか? prepareForReuseメソッドの使用方法を教えてください。

これは今までのやり方ですが、細胞を再利用するためです。画像はスクロール時に他のセルに表示されます。

0 投票する
0 に答える
465 参照

ios - 一度に選択されるtableViewの複数のセクション

チェックボックス、ラベル、ラジオボタンを含むヘッダービューを備えた拡張テーブルビューがあります。

チェックボックスは複数選択できます。しかし、radioButton には single selection しかありません。別のラジオボタンが選択されている場合、以前に選択されていたボタンが tableView で選択解除されます

私の問題は、セクション 0 のラジオボタンを選択すると、セクション 8 と 16 のラジオボタンも選択されることです。ラジオボタンをスクロールすると、その状態が変わります。任意のセクションの任意のラジオ ボタンが選択されます。tableViewのセル再利用プロパティが原因であることは承知していますが、これを解決する方法がわかりません。ここSOで多くのソリューションを参照しましたが、どれも機能していないようです。この問題は私にとって非常に厄介で、これ以上先に進むことができません。間違っている場合、または何か不足している場合は、親切に案内してください。大変助かりました。ありがとうございました!

以下は、tableView の HeaderView のコードです。

ここに私の ViewController クラスがあります:

期待される出力:

ここに画像の説明を入力

私が得ているもの:

ここに画像の説明を入力