在我的項目中有幾個類。我們稱他們爲A,B,C,D。 我發現了兩個問題:例如我從「A」班到「B」再到「C」。在「B」類中有按鈕和計數器。當我第一次在班級「B」中推動一個btn時,一個計數器開始並且例如當計數器在6號時,等級「C」打開。當我從班級「C」回到班級「B」(通過點擊我的手機的後部btn)時,計數器在第6位,而不是0.Android後退問題
第二個問題:我從「A」 「B」,然後到「C」,然後回到「B」,然後到「C」等等。當我在班級「C」中推回btn時,我應該回到班級「B」然後到「A」然後退出。但是這裏發生了什麼:我回到「B」級,然後回到「C」級,然後上課「B」,然後上課「A」,因此它回到了之前打開的所有類。
更重要的是,我的退出按鈕(Main.this.finish();)
只在開始firworks。如果我經歷了一些類,它的行爲像後退按鈕,從而退出應用程序是不可能的。
我不知道,如果這些問題是連接或沒有,但我想聽聽他們的意見
感謝
編輯:。我看了您的意見和建議的網頁現在,我想更具體爲。現在,我們來談談三個活動t.java,CustomizeDialog.java和Highscores.java。當用戶打開Start.java(通過單擊Main.java中的按鈕)時,會啓動一個計數器。然後在3秒鐘後,用戶自動轉發到CustomizeDialog.java來寫他的名字。在該對話框上單擊確定後,他將被轉發到HighScores.java。現在,如果他點擊後退按鈕,他會回到Start.java。這裏的計數器就是它之前的位置(我知道這是Android的行爲)。
所以 首頁 - >開始 - > CustomizeDialog - > Higshcores - >單擊後退 - >啓動 (CustomizeDialog不是一個活動,而是一個對話框,這就是爲什麼它要回來的時候省略)
我試着這個清單中的,但什麼都不做:
<activity
android:name=".Start"
android:label="@string/app_name"
android:finishOnTaskLaunch="true">
</activity>
這是我如何使用計數器:
在一個按鈕偵聽在onCreate方法:
counter = new MyCount(3000,1000);
if (started == false)
{
counter.start();
started = true;
}
外onCreate方法:
public class MyCount extends CountDownTimer{
public MyCount(long millisInFuture, long countDownInterval) {
super(millisInFuture, countDownInterval);
}
public void onFinish() {
//filewrite
CustomizeDialog customizeDialog = new CustomizeDialog(Start.this);
customizeDialog.show();
};
@Override
public void onTick(long millisUntilFinished) {
tv.setText("" + millisUntilFinished/1000);
}
和OK按鈕聽者CustomizeDialog:
Intent intenthighscores = new Intent(mActivity, Highscores.class);
mActivity.startActivity(intenthighscores);
//Activity mActivity; is declared at the beginning of the dialog
我刪除了退出按鈕,因爲我讀這是不必要的,我會稍後再處理就像第二個問題一樣,如果這個問題仍然存在,因爲它與第一個問題有關。