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

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

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

HOME > Type of expression is ambiguous without more context

Type of expression is ambiguous without more context

Swift2.0になって今まで発生していなかったエラーが出てきています。NSAttributedStringの扱いでハマった箇所があったので共有です。

サンプル画像

参考:Swift 2.0: Type of Expression is ambiguous without more context?
参考:http://samekard.blogspot.jp/2014/09/swifterror.html?m=1
参考:When to use takeUnretainedValue() or takeRetainedValue() to retrieve Unmanaged Objects in Swift?
参考:trying to use takeUnretainedValue() in swift 2
参考:NSAttributedString and Swift 2.0

やってみた

このエラーですが、ambiguous=不確か な状態ですので、型宣言を明確にしてあげると解決します。


NSAttributedString(string: string,attributes: [kCTRubyAnnotationAttributeName: annotation])


NSAttributedString( string: string,attributes: [String(kCTRubyAnnotationAttributeName): annotation])

kCTRubyAnnotationAttributeNameを明記的にStringと宣言しないとコンパイルしてくれない。Swift1.2ではしてくれた、、、

サンプル画像

まとめ

Swiftのバージョン変わるごとの毎回のエラー修正大変

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

CoreTextをイラストで理解してみる

上記がAppleのCoreText説明に記載されているイラスト図ですが正直よくわかりません。文章を三角や丸等の領域に表示したり、一行だけ表示したり、一文字だけ表示したり、 と様々な使い方ができるようです。

URLエンコードとデコード

サーバとデータのやりとりをしているとURLエンコードしないと文字化けしちゃったりと問題がでる場合があります。 phpのurlencodeやurldecodeと連携させる場合等、Swift側でどうやってエンコードすれば良いかの方法を記載しております

WatchKitでAppleWatch開発

AppleのティムクックCEOがAppleWatchの発売が2015年4月と発表しましたね!あと2ヶ月ですので、本日からWatchKitを重点的に記事を記載していってアプリを 同時に開発してけたらと思います。
このエントリーをはてなブックマークに追加
右側のFacebookのLikeをクリック頂けると記事更新の際に通知されますので宜しければご利用下さい!