問題タブ [swift4]

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 投票する
2 に答える
2858 参照

swift - Swift 4 で JSON デコードが失敗する原因となるオプションの URL

オプション URL を使用すると、Swift 4 を使用して JSON デコードが失敗する理由を理解しようとしています。WWDC の「Foundation の新機能」ビデオ、Apples Playground の例、およびインターネット上の多くの場所に既に注がれていますが、解決策を見つけていません。

これは、問題を示すために作成したテストです。これが私のjsonデータだとしましょう:

そして、これは私の構造体です:

そして、ここで私はそれをシリアル化します:

ここで、問題は、image_url が欠落している json データを受信した場合、json のデコードが失敗し、nil が返されることです。

「種類」がオプションの文字列になり、値がない場合にjsonのデコードが失敗しない理由について混乱していますが、jsonを失敗させずにimage_urlをオプションのURLにすることはできません。

私はこれを2日間理解しようとしてきましたが、運がありません。なぜこれが失敗するのかについての洞察を持っている人はいますか?

パズルのもう 1 つのピースに気付きました。それは、json の image_url が実際には有効な画像 URL である必要はないということです。任意の文字列を入力でき、構造体がシリアル化されるため、これがどのように機能するかを誤解している可能性があります。URL が有効な URL に変換できる場合にのみ、URL が自動的に入力されると考えていましたが、それは起こっていません。

これに対する洞察は大歓迎です。

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

swift - swift 3 から swift 4 への移行 - String を予期される String.Element に変換できません

コードをSwift 3からSwift 4に変換していますが、次のコードでこのエラーが発生しています。flatmap を使用して配列を平坦化しようとしても、これが発生します

タイプ 'String' の値を予期される引数タイプ 'String.Element' (別名 'Character') に変換できません

以下のコード行は [String] を返さず、代わりに '[String.Element]' です [String] に変換するにはどうすればよいですか。[String] としてキャストしようとすると、常に失敗すると表示されます。

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

ios - ナビゲーション コントローラーの UISearchBar と 2 つのボタン

2 つのボタンと SearchBar をナビゲーション コントローラーに追加しようとしていますが、配置が正しくありません。SearchBar、UIButton のサイズを変更したり、Y 位置を変更したりするなど、ほとんどすべてを試しましたが、うまくいきませんでした。この問題を解決する方法はありますか? ここに画像の説明を入力 iOS 11 と Xcode 9 を使用しています

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

xcode - xcode 9識別子付きのバンドル内のペン先から参照される画像を読み込めませんでした

昨日 Xcode 9.0 に移行しましたが、画像リソースが機能しません。イメージをルートにドラッグし、[必要に応じてコピー] と [グループの作成] を選択して、プロジェクト ターゲットに追加します。

画像はストーリーボードに表示されますが、シミュレーターやデバイスには表示されません。

「2017-09-24 11:49:46.578312+0330 testResource[3999:148745] 識別子「com.app.testResource」を持つバンドル内のニブから参照された「past_exam_background.jpg」画像を読み込めませんでした。私はpngをテストしましたが、結果は同じでした。

私は何をすべきか?

xcode 9識別子付きのバンドル内のペン先から参照される画像を読み込めませんでした

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

ios - addTarget メソッドを Swift 4 に更新する方法

プロジェクトコードをSwift 4に更新すると、add.targetメソッドのエラーが発生します。このエラーを修正するにはどうすればよいですか?

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

ios - iOS グラフ、折れ線グラフでデータが更新されない

私はこの問題を抱えています: セグメント化されたコントロールのセグメントを切り替えるたびにデータがめちゃくちゃになりますが、実行時に切り替えて 0 セグメントでのみ切り替えた場合にのみ、何度切り替えても 1 セグメントは問題なく動作します。これが私が何を意味するかを説明するgifです:

ここに画像の説明を入力

この問題に対処するには?ここにいくつかのコードがあります

  1. セグメント化されたコントロールの ibaction 関数

    /li>
  2. todayFiller()(うまく機能するもの):

    /li>
  3. last7Filler()func (私に問題を与えるもの):

    /li>

ps funcemptyArrays()removeAll()、配列lowmidhighlowAmidAおよびhighA

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

xcode - UINavigationBar の [戻る] ボタンにカスタム イメージを設定すると、右にシフトします

ナビゲーションコントローラーの戻るボタンに画像を追加しようとしています。何とか成功しています。しかし、として。新しいイメージの場所に関して大きな問題があることがわかります。

戻るボタン 図1

これが私のコードです`

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

ios - Swift 4 デコード可能な json 配列

だから私は現在、下部にリンクされているJSON Apiを解析するプログラムに取り組んでいます

コードを実行すると、一部の出力が得られますが、すべてではありませんコンソール出力イメージ

主に、アニメのオプションのタイプが機能することを示しているので良いですが、名前とリリース日と言語にもアクセスしたいのですが、Swift 4 でこのような JSON 配列を操作する方法がわかりません。以下の現在のコード。

その後、さらにコードがありますが、それはカスタム collectionViewCells をセットアップするためのものです。

また、ここにAPIへのリンクがあります

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

swift - 'hideUISearchBarWhenScrolling'-tableView をプロパティとして使用するとプロパティが機能しない

私は新しい Swift4/iOS11 の可能性をいじりhideSearchBarWhenScrolling、UIViewController のプロパティとして tableView を使用しないという問題に固執しました。

UITableViewController では、正常に機能するように機能しています。

私は何を間違っていますか?誰かが同じ問題を発行しましたが、これに対する解決策はありますか?

ありがとう

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

swift - ジェネリック関数 where 句での Self の使用エラー

プロトコルの一部であるジェネリック関数Selfの句の一部として使用しようとすると、問題が発生します。where

たとえば、次のプロトコルと汎用関数が定義されているとします。

関数 Feed は、角かっこで囲まれたステートメントを使用して、最初のパラメーターがAnimalプロトコルに準拠する必要があることを宣言します。この句を使用whereして、2 番目のパラメーターの型が最初のパラメーターの関連付けられた型に準拠する必要があることを宣言します。

この汎用関数の要件に準拠するクラスを作成することは可能であり、すべてが完全に機能します。例えば:

ここまでは順調ですね。

ただし、プロトコルの一部としてジェネリックの同じパターンを実装すると、機能しなくなります。

このブロックを実行すると、次のエラーがスローされます。

目的の動作を実現する方法はありますか?