我正在準備一個像拼圖一樣的小遊戲,因爲我在佈局中使用了9個不同圖像的9個圖像視圖。在開始的時候將圖像設置爲imageview,這些都是實際的圖像,洗牌後用戶將滑動圖像以完成拼圖,我想檢查修改後的圖像與實際圖像的天氣是否相等,如果相等彈出消息,就像遊戲一樣。如何檢查拼圖遊戲是否完成?
我試圖象使用圖像(可繪),但不幸的之間的這種
1.by AND運算符。
2.使用setLevel()爲圖像,比較這些setLevel值與滑動仍然不幸運的圖像的getLevel值後這裏的問題是,如果我點擊imageview一次getLevel()給出正確的值,如果我點擊它不止一次給出零值。爲什麼會發生這樣的..
請幫助我,如果你發現我的代碼中任何差錯,否則引導我,很好的技術..
Xml code like this
<RelativeLayout
//9 imageview's
在java的代碼是這樣 如果用戶點擊的ImageView它會交換圖像的
img_View11.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
if(img_View21.getDrawable() == default_img ||
img_View12.getDrawable() == default_img) {
System.out.println("yes");
++click;
Noof_moves.setText("Moves: " +click);
ImageView iv = (ImageView)v;
d11 = iv.getDrawable();
prev_img = prev_imgView.getDrawable();
la11 = d11.getLevel();
System.out.println("d11 value is " +la11);
prev_imgView.setImageDrawable(d11);
img_View11.setImageDrawable(prev_img);
prev_imgView = img_View11;
check();
}
else { System.out.println("no"); }
}
});
void check(){
System.out.println("in checking condition");
if((lb11==la11) && (lb12==la12) && (lb13==la13) && (lb21==la21) && (lb22==la22)
&& (lb23==la23) && (lb31==la31) && (lb32==la32) && (lb33==la33)) {
Context c = getBaseContext();
System.out.println("gameover");
Toast.makeText(c, " GameOver ", Toast.LENGTH_SHORT).show();
}else{ System.out.println(" codition not checked "); }
}
//here lb=level before sliding
// la=level after sliding..
和一些代碼的東西,你是如何嘗試... –
你的拼圖使用拼圖形狀或正方形嗎?如果拼圖,分享你如何做到這一點? – portfoliobuilder