0

「ボーグル」ボードゲームに少し似たiOS用のゲームに取り組んでいます。基本的には、タッチダウン、タッチムーブ、タッチアップイベント構造でスワイプできる数字の4x4グリッドで、メインに戻りますスワイプされた「タイル」のID/コンテンツをプログラムし、それらを「選択」して、ユーザーが選択されたことを視覚的にフィードバックできるようにします(これは私の質問です...これを達成する方法)。タイルは、ボタンまたはラベルのいずれかになります。

Windows Phone および PC プラットフォームで、フォーム自体に関連付けられたタッチ ダウン/アップ/ムーブ イベント (「真上」または「下」、「上へ移動」、「上へ移動」という概念) を使用して、これを実行することができました。イベントを関連付けられた下/上/移動アクションに接続するのは簡単であることがわかりましたが、ジェスチャーとタッチアップ/下/移動パラダイムを調査しているにもかかわらず、iOS でこれを行う方法を理解できないようですそして、私が Windows で見つけた方法で動作しなかったいくつかの異なるジェスチャ プロジェクトを作成します。 for-windows-phones-part-2.aspx ボタンの代わりにラベルを使用する必要があると思いますが、どちらを使用してもかまいません。今のところ、単純なボタン タッチでゲームを実装しましたが、1 回のスワイプで一連の隣接するラベルを選択できない場合、ゲームはモダンな UI の感覚と自然な UI の制約の多くを失います。本当に助けていただければ幸いです。

4

2 に答える 2

1

GameBoardViewのサブクラスである を作成しますUIView。これにより、4x4 グリッドのすべてのラベルがサブビューとして表示されます。次に、 で、GameBoardViewタッチ イベントを処理する次のメソッドを実装できます。

– touchesBegan:withEvent:
– touchesMoved:withEvent:
– touchesEnded:withEvent:
– touchesCancelled:withEvent:

これらのメソッドはUIResponderスーパークラスでUIViewあり、オーバーライドされることを意図しているため、独自のタッチベースのロジックを実行できます。

于 2013-07-29T15:19:46.127 に答える
0

単純!

/* Lots of code that didn't work, see old version if you want */

いいえ、それほど単純ではありませんでした。UIButton がイベントをスチールするようです..

..だから、UILabelsとカスタムタッチ処理を備えたUIViewサブクラスを作成し(Clever Errorの答えも指摘されているように)、GitHubに投稿しました:https://github.com/LeonardPauli/LPSwipeableInputMatrixView

テスト済みで動作しています。しかし、まったく完璧ではありません。リメイクするのはかなり簡単なはずです。

幸運を!:)

于 2013-07-29T15:26:58.860 に答える