Swift転職なら=>【LevTech】
↑クリックして拡大
↑クリックして拡大
↑クリックして拡大
↑クリックして拡大

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

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型とか正直まだよくわかっていない。。。

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

SQLiteを使いたい。ラッパーを検証してみる。

SQLiteを使いたい。Objective-Cの時はMagical RecordでCoreDataを利用して問題なく使えたのですが、 今回はSQLite+Swiftでトライしてみたいと思います。ざっと調査すると、SwiftでSQLiteを使うのは、FMDB, SwiftData, SQLite.swiftが あるみたいです。この三つのラッパーから好みのものを選んでみるのが目標です。

String

StringとNSStringどちらを利用することもできますが、、、

AppleWatchをNSFileCoordinatorとKeychainでデータ交換

前回の記事(ナターシャさんのサンプルデモを元に解説)の続きです。今記事はNSUserDefaultではなく、 NSFileCoordinatorとKeychain sharingを利用しての解説です。ナターシャさんのサンプルに関して前記事をご参照ください。
このエントリーをはてなブックマークに追加
右側のFacebookのLikeをクリック頂けると記事更新の際に通知されますので宜しければご利用下さい!