Android Activity啟動模式之standard實例詳解
本文實例講述了Android Activity啟動模式之standard。分享給大家供大家參考,具體如下:
Android的活動是通過任務(wù)Task來進行管理的,一個任務(wù)就是一組放在棧里的活動的集合,即所謂的返回棧(Back Stack)。棧具有先進后出、后進先出的特性。當啟動一個活動時,活動會在返回棧中入棧,處于棧頂位置,當按下返回鍵或者調(diào)用finish方法會銷毀一個活動,此時棧頂活動會出棧,屆時又會有新的活動處于棧頂位置。
在Android中,活動的啟動模式有四種,根據(jù)不同的需求可以為活動設(shè)置不同的啟動模式。在這里介紹standard模式。
standard模式是活動啟動的默認模式,當為活動設(shè)置了此模式,每次啟動都會創(chuàng)建一個新的實例,而不在乎該活動是否已經(jīng)在返回棧中存在。
(1)新建Android項目TestLaunchMode
創(chuàng)建完成后,修改activity_main.xml如下
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" > <Button android:id="@+id/button1" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="MainActivity Button" /> </LinearLayout>
(2)修改onCreate方法
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); //打印當前對象 Log.d("MainActivity", this.toString()); //去掉title requestWindowFeature(Window.FEATURE_NO_TITLE); setContentView(R.layout.activity_main); //獲取button1 Button button1 = (Button) findViewById(R.id.button1); //添加點擊事件 button1.setOnClickListener(new OnClickListener() { @Override public void onClick(View view) { //為了測試standard啟動模式,當點擊按鈕時,啟動MainActivity活動 Intent intent = new Intent(MainActivity.this,MainActivity.class); //啟動活動 startActivity(intent); } }); }
在該方法中,打印了當前活動對象,同時為按鈕添加點擊事件:啟動本身活動。
(3)查看日志
發(fā)布android項目,為了查看效果,連續(xù)點擊按鈕3次,看到如下內(nèi)容:
從圖中可以看出,總共打印了4次(活動啟動+3次點擊按鈕),每次的活動實例都不用,從而驗證了活動啟動模式standard。
此時棧中有4個MainActivity實例,連續(xù)按Back鍵4次才能退出應(yīng)用程序。
更多關(guān)于Android Activity相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Android編程之a(chǎn)ctivity操作技巧總結(jié)》
希望本文所述對大家Android程序設(shè)計有所幫助。
相關(guān)文章
Android Studio開發(fā)之 JNI 篇的簡單示例
本篇文章主要介紹了Android Studio開發(fā)之 JNI 篇的簡單示例,它提供了若干的API實現(xiàn)了Java和其他語言的通信,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-10-10Android開發(fā)使用Activity嵌套多個Fragment實現(xiàn)橫豎屏切換功能的方法
這篇文章主要介紹了Android開發(fā)使用Activity嵌套多個Fragment實現(xiàn)橫豎屏切換功能的方法,結(jié)合實例形式分析了Android使用Activity嵌套多個Fragment進行橫豎屏切換的原理與具體操作技巧,需要的朋友可以參考下2017-11-11Android 8.0 中如何實現(xiàn)視頻通話的畫中畫模式的示例
本篇文章介紹了Android 8.0 中如何實現(xiàn)視頻通話的畫中畫模式的示例,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-11-11Android實現(xiàn)文件上傳和下載倒計時功能的圓形進度條
這篇文章主要介紹了Android實現(xiàn)文件上傳和下載倒計時功能的圓形進度條,需要的朋友可以參考下2017-09-09Android網(wǎng)絡(luò)編程之UDP通信模型實例
這篇文章主要介紹了Android網(wǎng)絡(luò)編程之UDP通信模型實例,本文給出了服務(wù)端代碼和客戶端代碼,需要的朋友可以參考下2014-10-10