2012-11-12 164 views
1

我試圖與配置後退按鈕:在哪裏放置onBackPressed

Public void onBackPressed(){return;} 

但它不會讓任何東西(我也試圖與super.onBack ......與終點)。我的應用程序是一個基於以下內容的業餘應用程序:Onclik X按鈕:「english」,因此它向您展示英語活動。還有100多個活動。

package com.example.speakcat; 

import android.os.Bundle; 
import android.app.Activity; 
import android.view.Menu; 
import android.view.View; 

public class MainActivity extends Activity { 
    @Override 
    public void onBackPressed() { 
     super.onBackPressed(); 
    } 

    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 
    } 

    public void english(View view) 
    { 
     setContentView(R.layout.activity_english); 
    } 

onBackPressed位置良好?因爲在這裏它什麼都不做。 我希望你能幫助我,謝謝。

回答

0

您必須重寫調用super的方法。如果你的想法回到他以前的Activity,那麼這就是你需要做的。

@Override 
public void onBackPressed() { 
    super.onBackPressed(); 
} 
+0

我不知道爲什麼但不工作,我把它放在正確的位置?我剛剛更新了我的問題以顯示我當前的代碼。 – user1816946

+0

太奇怪了!你能顯示你的mnifest文件嗎? – yugidroid

0

完成當前的活動,將自動轉到以前的一個

@Override 
public void onBackPressed() 
{ 
    finish(); 
} 
+0

它關閉應用程序。我認爲那是因爲它認爲只有一項活動。我第一次運行應用程序時,應用程序菜單上的所有活動都已完成。然後我在這裏讀到了從androidmanifest中刪除所有活動,現在我只有Mainactivity。我怎樣才能把一個活動放在另一個裏面? – user1816946

+0

創建另一個活動,然後在Manifest中註冊。 –

+0

是的,但是在清單上,所有內容都是平行的,我試圖在Mainactivity user1816946

0
@Override 
public boolean onKeyDown(int keyCode, KeyEvent event) { 

    if (keyCode == KeyEvent.KEYCODE_BACK) { 
     Log.d("CDA", "onKeyDown Called"); 
     onBackPressed(); 
     return true; 
    } 

    return super.onKeyDown(keyCode, event); 
} 
public void onBackPressed() { 
    Intent myIntent = new Intent(YourActivity.this, SecondActivity.class);//goto whichever activity you want by clearing top of stack. 
    myIntent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);// clear top of stack 
    startActivity(myIntent); 
    finish(); 
    return; 
} 

你可以打電話完成,如果你想回到以前的活動。 如果您有Actvity A並且您導航到B. A將轉到背景。它在活動堆棧上。在完成活動B彈出堆棧和活動A來到前臺。 http://developer.android.com/guide/components/tasks-and-back-stack.html。看看這個鏈接。

+0

好的,我理解了任務和堆棧的東西,但是如果我使用你的代碼,它會顯示出3個錯誤,其中兩個與keyeveny(我創建了一個類,但沒有任何東西)。我看到你的代碼與舊版本,我使用4.0它應該工作? – user1816946

+0

可以發佈logcat的詳細信息。 – Raghunandan