質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
Swift

Swiftは、アップルのiOSおよびOS Xのためのプログラミング言語で、Objective-CやObjective-C++と共存することが意図されています

Q&A

解決済

2回答

254閲覧

CIImageからUIImageへ変換する際にinitを求められるエラーに関して

udb

総合スコア25

Swift

Swiftは、アップルのiOSおよびOS Xのためのプログラミング言語で、Objective-CやObjective-C++と共存することが意図されています

0グッド

0クリップ

投稿2018/02/18 08:58

編集2018/02/18 12:16

Swift4,Xcode9.3におきましてQRCodeを生成しようと思いCIImageを作成して画面に表示させるためにUIImageに変換しようとしますとinitを求められ対処に困っています。

Swift

1import UIKit 2import CoreImage 3 4class ViewController: UIViewController { 5 6 @IBOutlet weak var ImageView: UIImageView! 7 8 func makeQRCode (){ 9 let filter = CIFilter(name:"CIFilter") 10 11 let msg = "テスト" 12 // QRコードを設定 13 filter?.setValue(msg.data(using: String.Encoding.utf8), forKey: "inputMessage") 14 //UIImageに変換 15// Ambiguous use of 'init(CIImage:)'->エラーによりCIImageにinitを求められる 16 let changeImage = UIImage(CIImage:(filter?.outputImage)!) 17 } 18}

この初期化の方法はどう対処すればImageViewに表示させることが出来る画像の型になりますでしょうか?ご教示をお願い致します。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

fuzzball

2018/02/18 09:45 編集

どこでどのようなエラーが出ているのか書いて下さい。
guest

回答2

0

ベストアンサー

これだといかがでしょうか?

Swift

1 2let msg = "テスト" 3 4let filter = CIFilter(name: "CIQRCodeGenerator", withInputParameters: ["inputMessage": msg.data(using: String.Encoding.utf8)!, "inputCorrectionLevel": "M"]) 5 6let changeImage = UIImage(ciImage:(filter?.outputImage)!) 7

投稿2018/02/27 01:10

newmt

総合スコア1277

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

udb

2018/02/27 01:40

動作するようになりました。適切な回答ありがとうございました。CIFilterの初期化の設定が年明けすぐに変更になっていたのですね。
fuzzball

2018/02/27 02:28 編集

>>CIFilterの初期化の設定が年明けすぐに変更になっていたのですね ??? フィルタ名が "CIFilter" になっているのが原因ですよ。 初期化方法は昔から変わっていません。
newmt

2018/02/27 02:15 編集

すいません。余計なものをつけていましたね。 これで十分です。 let filter = CIFilter(name:"CIQRCodeGenerator") let msg = "テスト" // QRコードを設定 filter?.setValue(msg.data(using: String.Encoding.utf8), forKey: "inputMessage") //UIImageに変換 // Ambiguous use of 'init(CIImage:)'->エラーによりCIImageにinitを求められる let changeImage = UIImage(ciImage:(filter?.outputImage)!)
guest

0

CIImageじゃなくてciImageです。

swift

1UIImage(ciImage:)

ref: init(ciImage:)

投稿2018/02/18 14:13

fuzzball

総合スコア16731

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

udb

2018/02/26 12:48

返信遅れました。すいません。 エラーが消えたのですが今度はビルド時にボタンを押すとアプリが落ちるようになりました。。。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問