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

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

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

iOSとは、Apple製のスマートフォンであるiPhoneやタブレット端末のiPadに搭載しているオペレーションシステム(OS)です。その他にもiPod touch・Apple TVにも搭載されています。

UI

UIはUser Interfaceの略であり、人間がコンピュータとやりとりをするためのシステムです。

Xcode

Xcodeはソフトウェア開発のための、Appleの統合開発環境です。Mac OSXに付随するかたちで配布されています。

Swift

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

Q&A

解決済

1回答

432閲覧

Swift Xcode MDCSwipeToChooseDelegateが宣言されていないと表示されてしまう

_Victorique__

総合スコア1392

iOS

iOSとは、Apple製のスマートフォンであるiPhoneやタブレット端末のiPadに搭載しているオペレーションシステム(OS)です。その他にもiPod touch・Apple TVにも搭載されています。

UI

UIはUser Interfaceの略であり、人間がコンピュータとやりとりをするためのシステムです。

Xcode

Xcodeはソフトウェア開発のための、Appleの統合開発環境です。Mac OSXに付随するかたちで配布されています。

Swift

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

0グッド

0クリップ

投稿2017/12/05 10:20

編集2017/12/05 12:37

###前提・実現したいこと
https://qiita.com/peg_73_/items/f5134db57695e7d608f4
このサイトでやっていることをやりたいです。

###発生している問題・エラーメッセージ

何故か使用するライブラリ関連でエラーが出てしまいます。
ライブラリ:MDCSwipeToChooseDelegate
イメージ説明

###該当のソースコード

//サイトのコードを参照//

Podfile

1 # Uncomment the next line to define a global platform for your project 2 # platform :ios, '9.0' 3 4 platform :ios, '11.0' 5 6 target 'TinderUI_test' do 7 pod "MDCSwipeToChoose" 8 end 9 10 11 target 'TinderUI_testTests' do 12 inherit! :search_paths 13 14 pod "MDCSwipeToChoose" 15 end 16 17 target 'TinderUI_testUITests' do 18 inherit! :search_paths 19 # Pods for testing 20 end

###試したこと
Podfileからinstallにも成功している。
BridgeHeader.hを作成し、BuildSettingにも記述済み
一つ気になったのは、上記サイトではBridgeSettingをCode Generationの所に記述しているが私の環境ではそこではなくGeneralの方にあるのでそちらに記述している点

###補足情報(言語/FW/ツール等のバージョンなど)
Xcode Version 9.1
Mac OS sierra
Swift Apple Swift version 3.1 (swiftlang-802.0.53 clang-802.0.42)

##追記
MDCSwipeToChooseDelegateに関しては解決しました!
ですが、それ以外の部分でエラーが出ており困っています。
これはライブラリーの問題なのでしょうか?それともSwiftCompilerが原因なのでしょうか?
イメージ説明

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

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

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

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

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

guest

回答1

0

ベストアンサー

追記

参考にしたものが古い。最低限動くようにしました。!のところにnilがくればアプリが落ちます。

swift

1import UIKit 2 3class ViewController: UIViewController, MDCSwipeToChooseDelegate { 4 5 var swipeCount = 0 6 var photoURL = [ 7// "http://up.gc-img.net/post_img_web/2013/03/a3a43755438b42d881929eefc7161191_0.jpeg", 8 "https://up.gc-img.net/post_img_web/2013/03/a3a43755438b42d881929eefc7161191_0.jpeg", 9// "http://pic.prepics-cdn.com/pib1298076039/5731792_218x291.gif", 10 "https://pic.prepics-cdn.com/pib1298076039/5731792_218x291.gif", 11// "http://omosoku.com/wp-content/uploads/misawa-225x300.gif" 12 "https://leverages.jp/images/common/LV01s.jpg" 13 ] 14 15 override func viewDidLoad() { 16 super.viewDidLoad() 17 // Do any additional setup after loading the view, typically from a nib. 18 19// let swipeView1 = createSwipeView(photoURL[0]) 20 let swipeView1 = createSwipeView(url: photoURL[0]) 21 self.view.addSubview(swipeView1) 22 23// let swipeView2 = createSwipeView(photoURL[1]) 24 let swipeView2 = createSwipeView(url: photoURL[1]) 25 self.view.insertSubview(swipeView2, belowSubview: swipeView1) 26 27// let swipeView3 = createSwipeView(photoURL[2]) 28 let swipeView3 = createSwipeView(url: photoURL[2]) 29 self.view.insertSubview(swipeView3, belowSubview: swipeView2) 30 31 } 32 33 func createSwipeView(url: String) -> UIView { 34 let options = MDCSwipeToChooseViewOptions() 35 options.delegate = self 36 options.likedText = "Like" 37// options.likedColor = UIColor.greenColor() 38 options.likedColor = UIColor.green 39 options.nopeText = "Later" 40// options.nopeColor = UIColor.lightGrayColor() 41 options.nopeColor = UIColor.lightGray 42 43 let swipeView = MDCSwipeToChooseView( 44 frame: CGRect( 45 x: 0, 46 y: 100, 47 width: self.view.bounds.size.width, 48 height: self.view.bounds.size.height - 300 49 ), 50 options: options 51 ) 52// let imageURL = NSURL(string: url) 53 let imageURL = URL(string: url) 54// swipeView.imageView.image = UIImage(data: NSData(contentsOfURL: imageURL!)!) 55 56 do { 57 58 try swipeView?.imageView.image = UIImage(data: Data(contentsOf: imageURL!)) 59 60 } catch { 61 62 fatalError() 63 64 } 65 66// return swipeView 67 return swipeView! 68 } 69 70 71 func view(view: UIView!, wasChosenWithDirection direction: MDCSwipeDirection) { 72// if (direction == MDCSwipeDirection.Left) { 73 if (direction == MDCSwipeDirection.left) { 74 } else { 75 } 76// swipeCount++ 77 swipeCount += 1 78 } 79 80 81 override func didReceiveMemoryWarning() { 82 super.didReceiveMemoryWarning() 83 // Dispose of any resources that can be recreated. 84 } 85 86 87} 88 89

環境

  • MacOS Sierra 10.12.6
  • Xcode 9.1 Build version 9B55

コード

BridgeHeader.h#import <MDCSwipeToChoose/MDCSwipeToChoose.h>の記載が無いとか。

objectivec

1#ifndef BridgeHeader_h 2#define BridgeHeader_h 3 4#import <MDCSwipeToChoose/MDCSwipeToChoose.h> 5 6#endif /* BridgeHeader_h */

swift

1import UIKit 2 3class ViewController: UIViewController, MDCSwipeToChooseDelegate { 4 5 override func viewDidLoad() { 6 super.viewDidLoad() 7 // Do any additional setup after loading the view, typically from a nib. 8 } 9 10 override func didReceiveMemoryWarning() { 11 super.didReceiveMemoryWarning() 12 // Dispose of any resources that can be recreated. 13 } 14 15 16} 17
project 'TinderUI_test.xcodeproj' # Uncomment the next line to define a global platform for your project # platform :ios, '9.0' platform :ios, '11.0' target 'TinderUI_test' do # Comment the next line if you're not using Swift and don't want to use dynamic frameworks # use_frameworks! pod "MDCSwipeToChoose" # Pods for TinderUI_test target 'TinderUI_testTests' do inherit! :search_paths # Pods for testing pod "MDCSwipeToChoose" end target 'TinderUI_testUITests' do inherit! :search_paths # Pods for testing end end

設定

Swift3.1とあったので、Swift Compilerのバージョンを3.2にしたくらいで、あとは特にいじることなくビルドは通りました。

イメージ説明

投稿2017/12/05 11:58

編集2017/12/05 13:48
izkn

総合スコア1698

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

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

_Victorique__

2017/12/05 12:37

丁寧にありがとうございます! 画像を追記いたしましたので確認くださると嬉しいです。
_Victorique__

2017/12/05 12:39

versionを3.2に変更してもダメでした。
_Victorique__

2017/12/05 13:41 編集

上の5個は修正で直せることが確認できました。下4つがどうにもならない状態です。 下二つも解決できました。下から3つ4つ目の解決策はあるでしょうか?
_Victorique__

2017/12/05 14:01

biludに成功しました!本当にありがとうございました。 swiftの経験が浅く、言語仕様が大幅に変わっていることに大変驚きました。python2->3以上の驚きでした。 ご迷惑をおかけして申し訳ないです。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問