簡體   English   中英

活動和布局之間的聯系? 如何更改布局? 如何開始和破壞活動?

[英]Connection between activity and layout? How to change layout? How to start and destroy an activity?

我是Android和Eclipse的初學者,我有幾個問題可以幫助我理解Android的理念:

  1. 該活動在“幕后”完成所有工作。 活動連接到XML文件中的布局。 當活動開始時,如果在setContentView方法中聲明,則將顯示連接的布局。 活動可以是獨立的,沒有任何布局,它可以由另一個活動調用,並且可以在不顯示任何布局的情況下完成所有工作。 活動類似於一個php文件,該文件由HTML中的我的提交按鈕調用,布局是顯示元素的.HTML。

我對嗎?

  1. 例如,如果要更改應用程序的布局,請單擊Layout1.xml按鈕時顯示Layout2.xml 然后,我必須銷毀與Layout1.xml連接的活動,並啟動與Layout2.xml連接的活動? 這個對嗎? 有什么更好的方法嗎?

  2. 如何(通過哪種方法)破壞/停止某種活動?

預先感謝您。

最好的選擇是閱讀有關活動的Android文檔, 網址http://developer.android.com/reference/android/app/Activity.html

我會在這里回答您的具體問題

  1. 活動是用戶可以看到的窗口(如果未定義布局,則為隱藏窗口)。 它處理了用戶可以查看和交互的應用程序部分的邏輯。 如果我們采用MVC模型(模型視圖控制器),則活動就是控制器,就它控制模型中的哪些數據顯示在視圖(xml布局)上而言。

  2. 如果要顯示新的窗口/屏幕/活動,則不需要銷毀當前窗口/屏幕/活動。 您可以打開一個新活動,同時將舊活動保留在后台(在后堆棧中)。 通過使用片段,您可以在一個活動中包含多個片段,因此您可以更改單個活動中的片段,而不是更改活動。 有關片段的更多信息,請訪問http://developer.android.com/reference/android/app/Fragment.html

  3. 這一點嚴重依賴於活動生命周期。 當活動被銷毀時,表示活動已完成,這可以通過以下方式完成:用戶可以在活動上按下返回按鈕,活動本身調用finish()或Android操作系統銷毀活動,因為其他地方需要內存(當應用在后台運行時可能會發生這種情況)。

當我們說某個活動已停止時,這意味着該活動不再對用戶可見。 可能是該活動位於后台堆棧中(另一個活動位於其前面),或者該應用程序已置於后台。

這是對您問題的簡短回答,但我強烈建議您閱讀Android文檔以獲取更多知識。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM