問題タブ [forced-unwrapping]
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 - ViewController Optional のラップ解除中に nil が見つかりました
「ViewControler」と「AnimalChooserViewControler」の2つのビューコントローラーを使用する非常に単純な迅速なアプリケーションを構築しています。First には、単純なラベルと 1 つの項目を含むツールバーがあり、ユーザーを 2 番目の画面に移動します。2 つ目は、カスタム ピッカーです。アプリの全体的な目的は、出力 UILabel を使用して、ユーザーが 2 番目のビュー コントローラーから最初のビュー コントローラーに選択したものを表示することです。私はxCode 6.4(ios8)を使用していることに言及する必要があります
私の問題は、presentedViewController を次のようにキャストしようとするときです。ViewController アプリが「致命的なエラー: オプション値 (lldb) のラップ解除中に予期せず nil が見つかりました」という例外でクラッシュします。この問題を解決する方法、提案はありますか? ViewControler の私のコードは次のとおりです。
そして、これは AnimalChooserViewControler の私のコードです
swift - 等価演算子は強制アンラップを意味しますか?
最後の 2 行に注意してください。
これは、比較するときにオプショナルをアンラップする必要がないということですか?
ios - ガードがラップされていない変数を作成しないのはなぜですか?
unwrapped
最後の return ステートメントで変数をアンラップする必要があるのはなぜですか? 警備員はこれを処理することになっていませんか?
エラー: オプションの型 'String?' の値 開封されていません。「!」を使用するつもりでしたか? また '?'?fmt.stringFromNumber(アンラップ)を返す
ios - スタンフォード電卓アプリが「unexpectedly found nil」というエラーでクラッシュする
プログラミングは初めてで、iPhone 8 アプリを作成するために iTunes U でスタンフォード コースを受講し始めました。Xcode 7 と Swift 2 を使用して El Capitan にいる間、彼らは Xcode 6 と Swift 1 を使用しています。Xcode が検出して修正するのに役立つコードのいくつかの違いを見つけました ("println" はたとえば、現在は「印刷」しています)が、コードの特定の部分でつまずいています:
これがまさに先生が書いた通りであることを確認するために、私は何度も再確認しました. 彼は正しくビルドされ、正しく機能しましたが、私のビルドは正しくビルドされましたが、操作しようとするとこの致命的なエラーが表示されます。
私はインターネットを見回しており、このサイト (スタンフォード電卓アプリがクラッシュし続ける) を含むいくつかの同様の例を見つけましたが、提案されたすべてを試した後、何かがシステムで一意であるか、動作しているに違いないと結論付けました。この問題を抱えていた他の環境よりも新しい Xcode/Swift 環境で。問題を解決した解決策はなく、すべての解決策で独自のエラーが追加されました。
他の誰かの質問に答えて、誰かがこのコードを使用して、「nil」が「display」によって返された場合に代わりに「0」を提供することを保証することを提案しました:
return (NSNumberFormatter().numberFromString(display.text) as? Double) ?? 0
私はこれを試しましたが、エラーが増えるだけでした.Swift 2に関連しているようです. Swift 1で良かった??)。
swift - Swift プロジェクト全体で強制的なアンラップを検出する方法はありますか?
Swift プロジェクト全体で強制的なアンラップを検出する (コンパイラ フラグまたはスクリプトを介して) 方法はありますか?
以下のようなことを考えています。
var a: A!
たとえば、誤検知をトリガーすることなく。
swift - Swiftでテキストフィールド値を変数に割り当てる
私は Swift を学ぼうとしていますが、予想以上に他の言語とは違うことがわかりました...
ユーザーの入力値を整数として変数に格納したいだけです。
私の試行の結果、次のエラーが発生します:「致命的なエラー: オプションの値のラップ解除中に予期せず nil が見つかりました」
私はこれを複数の方法で試しましたが、解決策が思いつかないようです。これを行う簡単な方法が必要であることはわかっています。
上記のコードが正しくないことはわかっていますが、それが最も正しいと思います。アンラップに関する限り、何かが欠けているようです。アンラップの原則は理解していますが、試したものは何もコンパイルされません。または、コンパイルされた場合、コードが開始されたときに上記のエラーで失敗します (コードはボタンが押されたときに開始されます)。
助けてくれてありがとう!