2014-02-26 54 views
-1

所以我使用的按鈕動畫使用後退按鈕的onClick方法之後(我的代碼是在這裏:Make an ImageView Visible with timer在一個活動

什麼我想現在要做的就是讓後退按鈕,onClick事件後,在創建時(onCreate())返回原始屏幕。我嘗試了finish()或onBackPressed(),但它只在有兩個不同的活動時才起作用。那麼你有什麼想法嗎?

+0

在onClick中,設置一個布爾值,onKeyUp檢查它是否是後退按鈕,如果布爾值是您設置的值。 –

+0

你能舉個例子嗎?用代碼如果有可能 – pap

+0

查看我的回答我發佈了 –

回答

1
private boolean mHasHappened = false; 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 

    //Other code 

    yourElement.setOnClickListener(new View.OnClickListener() { 
    @Override 
    public void onClick(View v) { 
     //Do your code 
     mHasHappened = true; 
    } 
}); 

@Override 
public boolean onKeyUp(int keyCode, KeyEvent event) { 
    if (keyCode == KeyEvent.KEYCODE_BACK && mHasHAppened) { 
     //Do your back button press code 
     return true; 
    } 
    else 
    { 
     return super.onKeyUp(keyCode, event); 
    } 
} 
0

你可以試試這個:

finish(); 
startActivity(new Intent(YourActivity.this, YourActivity.class)); 

希望它能幫助。

+0

不,它不起作用,因爲在動作結束的時候,活動從頭開始,而沒有按下後退按鈕。 – pap

+0

我以爲你想重新啓動你的'活動'。更具體一些,或者調用'onCreate()'方法。 – cosmincalistru

+0

所以我有一個原始的屏幕,然後當一個按鈕被點擊(onClick方法)動畫開始。當用戶想要回到原始屏幕時,他會按下按鈕返回,並將所有屬於同一個活動和一個相同佈局的按鈕返回。所以我的程序在上面的鏈接上,如果你想看看。 – pap

相關問題