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

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

0回答

1287閲覧

SwiftライブラリKolodaにおけるスワイプ方向の追加

退会済みユーザー

退会済みユーザー

総合スコア0

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クリップ

投稿2019/11/08 09:57

前提・実現したいこと

スマホアプリのTinderに代表されるような、スワイプ操作で対象を振り分けるアプリの実装。
上下左右の4方向へスワイプ操作で振り分ける。

Tinder-Like UIの作成用ライブラリである**Koloda**を使用。

<バージョン情報>
Xcode 11.0
Swift 5.0

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

デフォルトで設定されている、基本的な左右方向のスワイプ操作は問題なく動作。
上下方向のスワイプ動作が実現できない。
また、スワイプ時に動作するように記述した処理が動かない。

ビルドは問題なく通り、エラーコードは無し。

試したこと

日本語や英語でWeb検索し、サンプルコードやライブラリの解説を参考に記述。 

【問題1:スワイプ方向の追加】

その1. SwipeResultDirectionへの追加

Swift

1public enum SwipeResultDirection: String { 2 case left 3 case right 4 case up 5 case down 6 }

その2. スワイプ方向の許可

Swift

1 func koloda(koloda: KolodaView, allowedDirectionsForIndex index: UInt) -> [SwipeResultDirection] { 2 return [.up, .down, .left, .right] 3 }

<結果>
左右へのスワイプ:一定距離スワイプするとKolodaViewが画面外へ消え、次のViewが表示される(正しく動作)
上下へのスワイプ:どこまでスワイプしても消えることはなく、手に持ったままの状態

以上から、正しくスワイプ方向の追加が行われていないと思われるが、
参考文献の少なさから解決方法が全く見出せていない。

【問題2:スワイプ時の処理】

正しく処理できているか確認するため、スワイプ時にViewController上のUILabelのtextを変更するコードを記述。

Swift

1func koloda(_ koloda: KolodaView, didSwipeCardAt index: Int, in direction: SwipeResultDirection) { 2 switch direction { 3 case .right: 4 return label1.text = "右" 5 case .left: 6 return label1.text = "左" 7 case .up: 8 return label1.text = "上" 9 case .down: 10 return label1.text = "下" 11 } 12 }

<結果>
上述の通り動作していない上下方向だけでなく、左右方向へスワイプしてもUILabelのtextが変化しなかった。

まとめ

スワイプ方向の設定、スワイプ時の動作ともに全く解決の糸口が見えておらず、
Kolodaに関する解説がほとんど見当たらないことから非常に困っています。

何かアドバイスやご指摘があればよろしくお願いいたします。

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

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

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

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

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

popai306

2019/11/27 08:02

いったんソースの全体を貼ってみてもらえます?
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問