2011-12-09 47 views
1

我正在使用iOS的cocos2d進行紙牌遊戲,用戶只需向上滑動卡片即可選擇他的卡片,這意味着他不需要在其他地方滑動遊戲。這可能是一個非常愚蠢的問題,但即使在過去兩天裏搜索了互聯網之後,我也找不到具體的在一個場景中實現手勢識別(即向上滑動)的具體內容,而不是整個應用。我閱讀了Apple的UISwipeGestureRecognizer文檔的文檔,許多博客和其他一些視頻教程。我所能找到的只是在一個場景中的應用中實現它。向正確的方向稍微推動一下會很棒。如果您向我提供某種示例代碼,我真的很感激它。我已經理解了CCTouchesBegan等方法的概念,但我仍然對如何實現在玩家場景(玩家選擇牌的場景)中單獨滑動兩個精靈之一(卡)中的其中一個進行盲目操作。如何在cocos2d中爲特定場景實現手勢

非常感謝。

+0

UISwipeGestureRecognizer無法正常工作,因爲您使用的是cocos2d。您將需要創建自己的手勢識別器代碼。 –

+0

很傷心。你能否給我一些我可以開始工作的示例代碼?我只有這個可怕的起始麻煩cocos2d和obj C.我是新手。我讀了關於操作AppDelegate.m applicationDidFinishLoading方法,但我仍然是盲目的。請幫忙 – Prst

+0

在cocos2d論壇看看這個話題:http://www.cocos2d-iphone.org/forum/topic/8929我還沒有使用它 –

回答

2

就像在某個時間點添加UIGestureRecognizer一樣簡單,然後在不再需要時移除該手勢識別器。在你的情況下,可能在你場景的 - (void)清理方法中。沒有理由爲什麼手勢識別器需要全球化。

你應該檢查出Kobold2D(基於cocos2d),爲此我創建了一個super-easy wrapper for gesture recognizers。所有你需要做的就是將corresponding "enabled" flag設置爲YES,之後設置爲NO來啓動和停止手勢識別器。

+1

實際上,建議在'-onEnter'和'-onExit'方法上添加/刪除觸摸事件。 –

+0

誰建議在哪裏?我能想到的唯一原因是,只有在任何轉換完成後纔會調用onEnter,因此在其中添加觸摸事件可避免在轉換過程中接收觸摸事件。 – LearnCocos2D

+0

建議在cocos2d初學者指南中,這裏http://www.cocos2d-iphone.org/wiki/doku.php/tips:touchdelegates –