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

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

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

HOME > [NSObject : AnyObject]?' does not have a member named 'subscript'の対応

AnyObject does not have a member named 'subscript'の対応

配列が混じったオプショナル型のエラー対応方法。以下不備にハマったのでメモ。サンプルソースをコピーしているとよく発生するのでメモ。どうやらSwiftのバージョンアップでAPIの仕様が変わっているようで、オプショナル型に変わった場合等に必要と思われます。

参考: [NSObject : AnyObject]?' does not have a member named 'subscript' error in Xcode 6 beta 6


//2行目のitemがオプショナルなのでエラー。びっくりマークをつけても回避できない
var item : NSExtensionItem = self.extensionContext!.inputItems[0] as NSExtensionItem
var itemProvider : NSItemProvider = item.attachments[0] as NSItemProvider

以下のようにラップしてあげると解決します。


var item : NSExtensionItem = self.extensionContext!.inputItems[0] as NSExtensionItem
var attachments = item.attachments!;
var itemProvider : NSItemProvider = attachments[0] as NSItemProvider

今後もSwiftが成長していく中で多くなりそうなエラーです。

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

NSURLSessionでバックグラウンドで通信処理

NSURLConnectionの進化版のような立ち位置に私は感じております。アプリがバックグラウンドになっても通信処理を続けてくれる優れものです。 以前まではどうやら音声や位置情報だけに限られていましたが、このクラスによって大きなデータをユーザに気持ちよくDLしてもらうことも可能にです。

SwiftでZipファイルの解凍や圧縮する方法

SwiftでZipの解凍・圧縮処理の解説です。標準ライブラリにZip2があるやら3rdパーティのSSArchiveのObjective-Cのライブラリを Swiftにブリッジして利用するのが良い等の記載がありましたので調査してみます。

WWDC2015で面白い発表があるのかワクワクしてみる。

OS9の発表だったり、 iPadでアプリを分割して複数表示できたり、Apple Payがカナダに対応したり(それはどうでもいいですかね、、、)、 盛りだくさん。Appleファンには たまらない色んな新情報が色々でてきていますのでその中で私がきになる情報をフォーカスして少し調査してみます。 Swift関連もあるようですので共有してまいります。
このエントリーをはてなブックマークに追加
右側のFacebookのLikeをクリック頂けると記事更新の際に通知されますので宜しければご利用下さい!