0
我對Android的遊戲項目,具有源代碼是這樣的:如何使開關和案例工作?
package com.example.fun;
import android.media.MediaPlayer;
import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.view.Menu;
import android.view.View;
import android.widget.TextView;
import android.widget.Button;
public class DogActivity extends Activity {
Button buttonA;
Button buttonB;
Button buttonC;
Button buttonD;
Button buttonE;
Button buttonF;
Button buttonG;
Button buttonH;
Button buttonI;
Button buttonJ;
Button buttonK;
Button buttonL;
Button buttonM;
Button buttonN;
Button buttonO;
Button buttonP;
Button buttonQ;
Button buttonR;
Button buttonS;
Button buttonT;
Button buttonU;
Button buttonV;
Button buttonX;
Button buttonW;
Button buttonY;
Button buttonZ;
Button next;
Intent i;
TextView txtD;
TextView txtO;
TextView txtG;
int life=3;
TextView nyaw;
TextView nyaw2;
TextView nyaw3;
TextView kesempatan;
boolean l1,l2,l3;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_dog);
buttonA = (Button)findViewById(R.id.buttonAbout);
buttonB = (Button)findViewById(R.id.buttonhelp);
buttonC = (Button)findViewById(R.id.buttonc);
buttonD = (Button)findViewById(R.id.buttond);
buttonE = (Button)findViewById(R.id.buttonE);
buttonF = (Button)findViewById(R.id.buttonf);
buttonG = (Button)findViewById(R.id.buttong);
buttonH = (Button)findViewById(R.id.buttonh);
buttonI = (Button)findViewById(R.id.buttoni);
buttonJ = (Button)findViewById(R.id.buttonj);
buttonK = (Button)findViewById(R.id.buttonk);
buttonL = (Button)findViewById(R.id.buttonl);
buttonM = (Button)findViewById(R.id.buttonm);
buttonN = (Button)findViewById(R.id.buttonn);
buttonO = (Button)findViewById(R.id.buttono);
buttonP = (Button)findViewById(R.id.buttonp);
buttonQ = (Button)findViewById(R.id.buttonq);
buttonR = (Button)findViewById(R.id.buttonr);
buttonS = (Button)findViewById(R.id.buttons);
buttonT = (Button)findViewById(R.id.buttont);
buttonU = (Button)findViewById(R.id.buttonu);
buttonV = (Button)findViewById(R.id.buttonv);
buttonW = (Button)findViewById(R.id.buttonw);
buttonX = (Button)findViewById(R.id.buttonx);
buttonY = (Button)findViewById(R.id.buttony);
buttonZ = (Button)findViewById(R.id.buttonz);
next = (Button)findViewById(R.id.buttonnext);
txtD = (TextView)findViewById(R.id.textViewD);
txtO = (TextView)findViewById(R.id.textViewO);
txtG = (TextView)findViewById(R.id.textViewG);
nyaw = (TextView)findViewById(R.id.nyawa);
nyaw2 = (TextView)findViewById(R.id.nyawa2);
nyaw3 = (TextView)findViewById(R.id.nyawa3);
buttonA.setOnClickListener(myOnlyhandler);
buttonB.setOnClickListener(myOnlyhandler);
buttonC.setOnClickListener(myOnlyhandler);
buttonD.setOnClickListener(myOnlyhandler);
buttonE.setOnClickListener(myOnlyhandler);
buttonF.setOnClickListener(myOnlyhandler);
buttonG.setOnClickListener(myOnlyhandler);
buttonH.setOnClickListener(myOnlyhandler);
buttonI.setOnClickListener(myOnlyhandler);
buttonJ.setOnClickListener(myOnlyhandler);
buttonK.setOnClickListener(myOnlyhandler);
buttonL.setOnClickListener(myOnlyhandler);
buttonM.setOnClickListener(myOnlyhandler);
buttonN.setOnClickListener(myOnlyhandler);
buttonO.setOnClickListener(myOnlyhandler);
buttonP.setOnClickListener(myOnlyhandler);
buttonQ.setOnClickListener(myOnlyhandler);
buttonR.setOnClickListener(myOnlyhandler);
buttonS.setOnClickListener(myOnlyhandler);
buttonT.setOnClickListener(myOnlyhandler);
buttonU.setOnClickListener(myOnlyhandler);
buttonV.setOnClickListener(myOnlyhandler);
buttonW.setOnClickListener(myOnlyhandler);
buttonX.setOnClickListener(myOnlyhandler);
buttonY.setOnClickListener(myOnlyhandler);
buttonZ.setOnClickListener(myOnlyhandler);
next.setOnClickListener(myOnlyhandler);
}
View.OnClickListener myOnlyhandler = new View.OnClickListener() {
public void onClick(View v) {
if(buttonD.getId() == ((Button)v).getId()){
txtD.setVisibility(View.VISIBLE);
}
else if(buttonO.getId() == ((Button)v).getId()){
txtO.setVisibility(View.VISIBLE);
}
else if(buttonG.getId() == ((Button)v).getId()){
txtG.setVisibility(View.VISIBLE);
i = new Intent(DogActivity.this, HouseActivity.class);
startActivity(i);
}
else if(next.getId() == ((Button)v).getId()){
i = new Intent(DogActivity.this, HouseActivity.class);
startActivity(i);
}
else{
MediaPlayer mp = MediaPlayer.create(getApplicationContext(), R.raw.no);
mp.start();
life--;
**switch (life) {
case 2:
nyaw.setVisibility(View.INVISIBLE);
break;
case 1:
nyaw2.setVisibility(View.INVISIBLE);
break;
case 0:
nyaw3.setVisibility(View.INVISIBLE);
i = new Intent(DogActivity.this, TamatActivity.class);
startActivity(i);
break;
}**
}
}
};
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.dog, menu);
return false;
}
}
但是當我運行它,開關和案例代碼是沒有工作。我是把它放在錯誤的地方還是代碼錯了?感謝您的回答..
後'生活 - '登錄生命的價值,並檢查是否有任何情況下匹配 – Raghunandan
嘗試增加調試語句您的每一個的if/else子句和開關的情況下,看看你的代碼被執行或不。您可以使用Log.d(「TAG」,「Message」)進行調試;嘗試打印消息部分中有用的內容,例如。按鈕的名稱或案例的編號。這將在您的LogCat控制檯中顯示。 – Daniel
@丹尼爾。 Logcat不用於調試(一般情況下)。顧名思義,這是爲了記錄。請不要在Android社區中發生這種疾病,在那裏人們不會學習使用「調試器」,這是找到這樣的問題的正確方法。如果每個人都使用調試器,則StackOverflow上90%的問題將不再需要。 – Simon