↑クリックして拡大
↑クリックして拡大
↑クリックして拡大
↑クリックして拡大

頭痛が減ったので共有です!

rebuild.fmを応援しています!

HOME > XXXXXX

Swift3へのアップグレードでType Anyのエラーで悩む

こちらどうやら「型が不明だよ」との不具合のようなので、明記的に分解してあげると解決できます。Qiitaの記事がわかりやすいです。

サンプル画像

参考:Type 'Any' has no subscript members after updating to Swift 3
参考:type any? has no subscript members
参考:http://qiita.com/___dera/items/7313f2fc705d846c88f2

やってみた

例えば、こんな箇所です。

サンプル画像


        self.contentsPageDataArr = NSMutableArray();
        for (index,obj) in self.contentsDataArr.enumerated(){
            let section = self.contentsDataArr[index]["section"];//<- エラー
        }
		

self.contentsDataArr[index]がAny型で返っているため、["section"]が保証されていないようです。

カスタマイズ


        self.contentsPageDataArr = NSMutableArray();
        for (index,obj) in self.contentsDataArr.enumerated(){
            let selectedData = self.contentsDataArr[index] as AnyObject?
            let section = selectedData?["section"];
        }
		

これならコンパイルエラーにならない。

まとめ

ID型とか正直まだよくわかっていない。。。

↓こんな記事もありますよ!


2021-05-14 14:21:41

WatchOSのwatchconnectivityのFiletransferの落とし穴。と、避け方。

AppleWatch 実機だと成功するんだけど、シュミレーターだと失敗するという、、、 昔作成してた時は成功してたのになーと思って調べると、どうやら昔は成功してたみたい。watchOS6以降は...

2021-05-06 14:04:37

LINEのアニメーションスタンプ制作の落とし穴、、、失敗談

ゴールデンウィークにLINEスタンプを作成してみました。 作り切って申請も通したんですが、意図したアニメーションと違う、、、、 LINEクリエーターの画面だと、アニメーションのプレビュー...

2021-05-01 18:05:35

久しぶりのAdmobをobjective-cに実装。コンパイルエラーだらけ。バーミッション不具合でエミュレータにインスコできない。

忘れないようにメモ エミュレータにアプリをインストールする際にパーミッション系のエラーがでた時、また、iphone実機にインストールする際にも権限系のエラーが出る場合。 ターゲット→ex...
このエントリーをはてなブックマークに追加
右側のFacebookのLikeをクリック頂けると記事更新の際に通知されますので宜しければご利用下さい!