2011-05-10 105 views
8

我在這裏有一個基本的Android問題:從main.xml佈局切換到另一個佈局

我有一個main.xml佈局,當應用程序啓動時加載。這個頁面有一個我想要的菜單按鈕(當點擊時)將用戶發送到另一個佈局(about.xml)。

我懷疑這是對的。當點擊這個命令被踢:

setContentView(R.layout.about); 

而且它似乎工作,我看到了about.xml頁面,但我不能導航回到main.xml中的佈局時,我打我的Android返回按鈕設備,應用程序只是關閉。

我懷疑這是在xml佈局文件之間導航的正確方法。你可以請幫忙或者指給我一個爲我這樣的計算機程序員初學者拼出來的頁面嗎?

非常感謝你,

帕特

編輯: 感謝所有幫你點我在正確的方向上的答案。爲了幫助像我這樣的未來noob程序員理解活動,這裏有一個非常簡單的教程,我在網上找到它爲我們初學者繪製出來了!

http://www.warriorpoint.com/blog/2009/05/24/android-how-to-switch-between-activities/

+2

我建議你閱讀http://developer.android.com/guide/topics/fundamentals.html上的基礎知識 – ernazm 2011-05-10 15:46:06

回答

7

你有一個獨立的活動爲您的關於網頁?通常爲每個屏幕創建一個新的活動。當你進入新的屏幕時,新的活動將被疊加在第一個屏幕活動上。當您在Android設備上點擊返回時,以前的活動將彈出。

+0

非常感謝!對我來說,看編程代碼就像試圖解釋象形文字。我只需要一個參考點,你的回答幫助我指出了正確的方向。非常感謝你! :-) – PAMUNOZ 2011-05-11 23:53:15

-2

這樣當你需要管理的後退按鈕行爲

這裏佈局之間的切換是在活動主類

@Override 
public boolean onKeyDown(int keyCode, KeyEvent event) 
{ 
    if((keyCode == KeyEvent.KEYCODE_BACK) && (secondary_layout_is_displayed)) 
    { 
     displayPrimaryLayout(); 
     // return true to let the system know we consumed the back button press 
     return true; 
    } 

    // return the default value 
    return super.onKeyDown(keyCode, event); 
} 
+0

沒有必要更改後退按鈕的行爲。最好的解決方案是爲新佈局創建一個新的活動。 – Amplify91 2011-05-10 15:52:06

+0

-1,OP確實知道基礎知識,他首先需要根據Google的建議創建活動,然後再試圖扭曲行爲。 – 2011-05-10 16:00:44

+0

ouch,我同意最好的解決方案是多個活動我只是提供一個基於他的代碼的解決方案... – snctln 2011-05-10 16:48:12

1

使用僞代碼示例,你要做的是創建一個新的Activity爲每個不同的屏幕。您將每個新的活動創建爲一個新類,並使用Intents在它們之間移動。通過這種方式,每個活動只能使用setContentView();一次。 Android website充滿了很多資源。

+0

感謝您花時間提供鏈接! :-) – PAMUNOZ 2011-05-11 23:57:10

1

您的主要活動將contentview設置爲main.xml,並且您還有另一個about.xml應該設置爲其他活動,以便您可以使用Intents從一個活動移動到另一個活動。我建議你好好瀏覽一下開發者的網站,在那裏你可以找到活動和意圖的用法。

相關問題