http://topic.csdn.net/u/20110409/22/bda103a3-abe5-4cda-8d47-4f2f2128553b.html?33936非常感谢wjhlrt给每句代码添加的注释,我现在对tileview已经有了基本的了解。请问在tileview中每句话在贪吃蛇中所起的作用是什么?还有就是snake.java,snakeView.java和tileView.java这三个之间具体是怎么协同工作,最后可以达到显示贪吃蛇的效果呢?还有就是我对坐标不是很了解,现在知道了手机屏幕中的原点在左上角,在下面的图中mTileSize; mXTileCount;  mXOffset怎么看呢?谢谢。

解决方案 »

  1.   

    这是初始化游戏时蛇身的代码,
    private void initNewGame() {  //初始化游戏
            mSnakeTrail.clear();  //清空arraylist列表
            mAppleList.clear(); 
     
            // For now we're just going to load up a short default eastbound snake 
            // that's just turned north 
     
     
            mSnakeTrail.add(new Coordinate(7, 7));  //创建蛇身
            mSnakeTrail.add(new Coordinate(6, 7)); 
            mSnakeTrail.add(new Coordinate(5, 7)); 
            mSnakeTrail.add(new Coordinate(4, 7)); 
            mSnakeTrail.add(new Coordinate(3, 7)); 
            mSnakeTrail.add(new Coordinate(2, 7)); 
            mNextDirection = NORTH;  //新的方向:北方
     
            // Two apples to start with 
            addRandomApple();  //开始时的随机苹果
           
     
            mMoveDelay = 600;  //设置移动延迟
            mScore = 0;  从创建蛇身的坐标来看应该是一条直线,而不是一条折线,但是开始游戏时蛇的状态如上图,这是为什么呢?