2014-05-13 61 views
0

你好,這裏是我MainActivity:如何去優化以前的活動?

public class MainActivity extends ActionBarActivity implements android.view.View.OnClickListener { 
@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 
    Button button1 = (Button) findViewById(R.id.button1); 
    button1.setOnClickListener(this); 
} 

@Override 
public void onClick(View v) { 
    Log.i("clicks","You Clicked B1"); 
    Intent i=new Intent(MainActivity.this, loginPage.class); 
    startActivity(i); 

} 

}

我想知道如何當我的loginPage已由回事件中按下回到這個MainActivity。

這裏是loginPage:

public class loginPage extends Activity { 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.connexion); 
} 
@Override 
public void onBackPressed() 
{ 
    finish(); 
} 

}

我不知道要放什麼onBackPressed ..

+0

你是什麼意思?放一個動畫,就像幻燈片效果一樣? –

+0

對不起,我的英語不好,很好,我的意思是「優化」 – Kangoo13

+0

也許不重寫* onBackPressed *。當您按下硬件按鈕時,操作系統將自動完成您的活動(如果您尚未在上次活動中聲明完成)。如果你不需要做其他的事情,你的代碼中的這個被忽略的方法似乎是沒用的。信任操作系統。 – Fllo

回答

0

默認情況下,Android操作系統調用onBaskPressed()當返回按鈕被按下併爲當前活動撥打finish()
然後,系統會自動將您重定向到之前的活動(僅當您在前一個活動中沒有撥打finish()時)。所以,你不需要重寫這個方法,因爲操作系統爲你做了。

如果按下模擬器上的硬件返回按鈕不會執行任何操作,請編輯模擬器並確保通過檢查來啓用硬件鍵盤。另外,請勿使用無皮膚

AVD edition