我已经搜索了很多,以使精灵(_player)被检测到并与另一个精灵(目标)发生碰撞,并在通过谷歌和stackoverflow站点发生碰撞后被删除,但在cocos2d-android中找不到解决方案,我是能够在 cocos2d-iphone 上找到很多信息,而不是在 android 上,即使我已经将我的代码与 iphone 代码进行了比较,但无法弄清楚。这就是我所做的。
public class GameLayer extends CCColorLayer
 {
protected LinkedList<CCSprite> _targets;
protected LinkedList<CCSprite> _projectiles;
protected int _projectilesDestroyed;
protected CCSprite _player;
protected CCSprite _nextProjectile;
public static CCScene scene()
{
    CCScene scene = CCScene.node();
    CCColorLayer layer = new GameLayer(ccColor4B.ccc4(255, 255, 255, 255));
    scene.addChild(layer);
    return scene;
}
protected GameLayer(ccColor4B color)
{
    super(color);
    this.setIsTouchEnabled(true);
    _targets = new LinkedList<CCSprite>();
    _projectiles = new LinkedList<CCSprite>();
    _projectilesDestroyed = 0;
    CGSize winSize = CCDirector.sharedDirector().displaySize();
    _player = CCSprite.sprite("Player2.png");
    _player.setPosition(CGPoint.ccp(_player.getContentSize().width / 2.0f, winSize.height / 2.0f));
    addChild(_player);
    this.schedule("gameLogic", 1.0f);
    this.schedule("update");
}
更新方法
public void update(float dt)
{
    LinkedList<CCSprite> projectilesToDelete = new LinkedList<CCSprite>();
    for (CCSprite projectile : _projectiles)
    {
        CGRect projectileRect = CGRect.make(projectile.getPosition().x - (projectile.getContentSize().width / 2.0f),
                                            projectile.getPosition().y - (projectile.getContentSize().height / 2.0f),
                                            projectile.getContentSize().width,
                                            projectile.getContentSize().height);
        LinkedList<CCSprite> targetsToDelete = new LinkedList<CCSprite>();
        for (CCSprite target : _targets)
        {
            CGRect targetRect = CGRect.make(target.getPosition().x - (target.getContentSize().width),
                                            target.getPosition().y - (target.getContentSize().height),
                                            target.getContentSize().width,
                                            target.getContentSize().height);
            _player = CCSprite.sprite("Player2.png");
            _player.setPosition(CGPoint.ccp(50,100));
            CGRect playerRect = CGRect.make(_player.getPosition().x - (_player.getContentSize().width / 2.0f),
                    _player.getPosition().y - (_player.getContentSize().height / 2.0f),
                    _player.getContentSize().width,
                    _player.getContentSize().height);
            if (CGRect.intersects(projectileRect, targetRect))
                targetsToDelete.add(target);
            else if (CGRect.intersects(playerRect, targetRect))
                _player.remove(_player);
            removeChild(_player, true);
        }
        for (CCSprite target : targetsToDelete)
        {
            _targets.remove(target);
            removeChild(target, true);
        }
        if (targetsToDelete.size() > 0)
            projectilesToDelete.add(projectile);
    }