編輯:關於Android編程
運行結果:

為了在坦克上方畫血條 。血條首先要有坐標x,y 寬和高width和height
血量的多少life也要有。
所以新建類Life要有這些參數
Life類如下:
package tankWar;
import java.awt.Color;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.Rectangle;
import java.awt.geom.Rectangle2D;
public class Life {
private int x;
private int y;
private int width=40;
private int height=10;
private int life;
public Life() {
super();
// TODO Auto-generated constructor stub
}
public Life(int x, int y,int life) {
super();
this.x = x;
this.y = y;
this.life=life;
}
public int getX() {
return x;
}
public void setX(int x) {
this.x = x;
}
public int getY() {
return y;
}
public void setY(int y) {
this.y = y;
}
public void draw(Graphics g){
Graphics2D g2=(Graphics2D) g;
//畫外圈
Rectangle2D r2=new Rectangle2D.Double(x, y-height, width, height);
g2.setColor(Color.YELLOW);
g2.draw(r2);
//根據血量比例畫血條
Rectangle2D r=new Rectangle2D.Double(x+1, y-height+1, width*((double)life/100)-1, height-1);
g2.setColor(Color.RED);
g2.fill(r);
}
}
最後在Tank類中畫坦克的時候畫血條即可。
private void drawEnemyTanks(Graphics g) {
// TODO Auto-generated method stub
// 畫敵方坦克
for (Tank t : enemyTanks) {
if (t.isbLive()) {
//畫坦克
t.draw(g);
//畫血條
Life life=new Life(t.getX(), t.getY(), t.getLive());
life.draw(g);
} else {
// 坦克死亡 畫爆炸
Bomb b = new Bomb(t.getX() - 50, t.getY() - 30);
b.draw(g);
enemyTanks.remove(t);
}
}
}
因為我的坦克不在集合裡面,自己寫
// 畫我的坦克
if (myTank.isbLive()) {
myTank.draw(g);
Life life=new Life(myTank.getX(), myTank.getY(), myTank.getLive());
life.draw(g);
} else {
// 游戲結束
isGameOn = false;
}
Android組件:Fragment實例
Fragment依賴於Activity中,但又與Activity相互獨立,可以將其視作Activity裡面的子Activity,一般用於平板,因為一個Activity空間
Android Studio設置logcat顏色
在Android Studio裡面默認的logcat顯示顏色是灰色的,不同等級的log是沒有顏色分別的,如圖這一點遠不如Eclipse好看,但是Android Studi
Android中應用界面主題Theme使用方法和頁面定時跳轉應用
主題Theme就是用來設置界面UI風格,可以設置整個應用或者某個活動Activity的界面風格。在Android SDK中內置了下面的Theme,可以按標題欄Title
Android中Spinner(下拉框)控件的使用詳解
android給我們提供了一個spinner控件,這個控件主要就是一個列表,那麼我們就來說說這個控件吧,這個控件在以前的也看見過,但今天還是從新介紹一遍吧。Spinner