2012-12-14 51 views
5

我一直在努力從http://obviam.net/index.php/a-very-basic-the-game-loop-for-android/的例子在這個我想做一些改變。如何將圖像從下往上連續移動?

Speed.java

public class Speed { 

    public static final int DIRECTION_RIGHT = 1; 
    public static final int DIRECTION_LEFT = -1; 
    public static final int DIRECTION_UP = -1; 
    public static final int DIRECTION_DOWN = 1; 

    private float xv = 1; // velocity value on the X axis 
    private float yv = 1; // velocity value on the Y axis 

    private int xDirection = DIRECTION_RIGHT; 
    private int yDirection = DIRECTION_DOWN; 

    public Speed() { 
     this.xv = 1; 
     this.yv = 1; 
    } 

    public Speed(float xv, float yv) { 
     this.xv = xv; 
     this.yv = yv; 
    } 

    public float getXv() { 
     return xv; 
    } 
    public void setXv(float xv) { 
     this.xv = xv; 
    } 
    public float getYv() { 
     return yv; 
    } 
    public void setYv(float yv) { 
     this.yv = yv; 
    } 

    public int getxDirection() { 
     return xDirection; 
    } 
    public void setxDirection(int xDirection) { 
     this.xDirection = xDirection; 
    } 
    public int getyDirection() { 
     return yDirection; 
    } 
    public void setyDirection(int yDirection) { 
     this.yDirection = yDirection; 
    } 

    // changes the direction on the X axis 
    public void toggleXDirection() { 
     xDirection = xDirection * -1; 
    } 

    // changes the direction on the Y axis 
    public void toggleYDirection() { 
     yDirection = yDirection * -1; 
    } 

} 

利用這一點,在各個方向上的圖像移動。現在我只想限制這個從底部到頂部的運動。 onclick的功能是,我們可以點擊並拖動圖像到需要的位置。我想用圖像消失或去其他活動來取代它。請幫助我對此代碼進行更改。提前致謝。

+0

我也想知道...請幫忙... – ALi

+1

用'private float xv = 0;'替換'private float xv = 1;'? –

+0

@SherifelKhatib沒有解決問題。 –

回答

0

如果您已經使用了SurfaceView,那麼在onDraw(Canvas canvas)方法中,代碼用於從下往上移動圖像就是這樣的。

canvas.drawBitmap(bitmap,xPoint,yPoint,paint); 

,其中位圖圖像(這要移動的位圖),XPOINT是x座標,yPoint是Y座標和塗料是塗料,這也是可以爲空。

和底部到頂部的運動只是在任何線程之前onDraw()調用Update

yPoint = yPoint - 1; 

願這幫助你。

+0

onclick功能如何? –

+0

您可以通過查找圖像座標和觸摸座標在onTouchEvent中執行此操作。 –

+0

請檢查教程並相應回答。當我按照自己的說法進行更改時,它仍會從下到上以交叉方式移動,並且在達到頂部時,位圖會從屏幕頂部的左側移動到右側或左側移動到右側。所以請檢查一次教程,然後回答,我知道該怎麼做,但不知道該怎麼做。這就是我來這裏的原因。所以如果你知道的話,請回答適當。並感謝至少回答這個問題。再次感謝 –