問題タブ [deinit]
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.
swift - 遅延初期化と deinit
deinit
ビューコントローラーで遅延プロパティを使用し、初期化されている場合にのみ遅延プロパティのメソッドをメソッドで呼び出すことが可能かどうかを知りたいです。いくつかのコードの下:
このようにsession.delete()
、deinit
メソッド内で が呼び出さsession
れて使用されていない場合 (まだ使用されている場合nil
)、初期化されてからdelete
呼び出されます。私はこれをしたくありません。以前に初期化されていたdelete
場合にのみ呼び出したいと思います。session
これを達成する方法はありますか?怠惰な初期化のアイデアを手放す必要がありますか?
ios - テーブル ビュー deinit が呼び出されない
table view
追加のコードなしで、完全に新しいプロジェクトに法線があります。私のストーリーボードには、2 つのビュー コントローラーと へのnavigation controller
埋め込みがありFirst Controller
ます。First Controller
ボタンとラベルを含むテーブルビューがあります。ストーリーボードのボタンから2番目のコントローラーにsegue
与えました。cell
私が知りたいのは、いつ私deinit
が最初controller
に呼び出されるかということですが、呼び出されていません。ブレークポイントを設定しましたが、何も機能していないようです。
からにsegue
戻るとsecond
、first
で動作second controller
しcontroller
ますpopped
。deinit
しかし、最初のコントローラーで実行するには何をする必要があるでしょうか? からもpop
最初にする必要がありますか?または、明示的に別の場所を指定する必要がありますか?controller
stack
nil
背後にある正しい概念を理解するのを手伝ってください。これについて正しい方向に私を導いてください。
コード-:
カスタムセル-:
2 番目のコントローラー: