編輯:關於Android編程
在AndroidManifest中Activity的launchMode有四種類型:
1.standard
2.singleTop
3.singleTask
4.singleInstance
今天就簡單介紹一下,附上一個參考地址,人家寫的牛逼http://blog.csdn.net/moreevan/article/details/6788048
下面還是看代碼吧,都放到注釋裡了:
package com.mxy;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.util.Log;
import android.view.Menu;
import android.view.View;
/**
* 進程 參考http://blog.csdn.net/niu_gao/article/details/7202300
* Activity四種啟動模式
* standard 按照棧先進後出的順序存儲
* 例如 依次點開 act1 act2 act1 act2 點擊返回的時候就是 act2 act1 act2 act1 雖然裡面有兩個act1 兩個act2 但卻都不相同
*
* singleTop 當進入的Activity已經在棧頂了,不會再創建新的Activity放入棧中,而是復用棧頂的activity,但是會調用onResume方法
* 例如 act2是singleTop的 依次點擊 act1 act1 act2 act2 act2 這時候棧中存著的就是act1 act1 act2 點擊返回的餓時候就是act2 act1 act1
* 在浏覽器中得書簽會用到該模式
*
* SingleTask 一般和singleTop操作模式類似,如果他發現任務棧裡面已經有了要啟動的這個Activity,他會清空這個Activity所在的任務棧上面的所有Activiy,然後直接復用這個已經存在的Activity 。
* 例如 act2是SingleTask的 依次進入 act1 act2 act1 act2 act1 act2這時候棧中存在的是act1 act2 點擊返回的時候就是act2 act1
*
* singleinstance 被設置了singleinstance得Activity,會放入一個獨自的任務棧,然後其他未設置為singleinstance的任務棧,如果設置了singleinstance得Activity
* 被請求了,那這時候這個任務棧的優先級就比另一個普通的任務棧的級別高,就會被運行,如果其他的Activity被請求,就會降低該任務棧的優先級
* 例如 act2是singleinstance的 這時候我們
* 點擊act1 後
* 任務棧 優先級 棧中數據(左邊表示棧頂)
* 普通 低 act1
*點擊act2後
* 普通 低 act1
* 單例 高 act2
* 點擊act3後
* 普通 高 act1 act3
* 單例 低 act2
*點擊act2後
* 普通 低 act1 act3
* 單例 高 act2
* @author mxy
*
*/
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
@Override
protected void onResume() {
Log.i("mxy", "MainActivity");
super.onResume();
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
public void click(View view){
Intent intent = new Intent(this,SecondActivity.class);
startActivity(intent);
}
}
例子源碼地址:http://download.csdn.net/detail/mengxiangyue/7262467
安卓快速入門指南(中)
第3節 計算器小應用現在起,我們就開始正式開發“計算器”應用。3.1 計算器界面布局這一節,我們將完成計算器的界面布局,讓它初具計算器的模樣。計算
Android App開發中自定義View和ViewGroup的實例教程
ViewAndroid所有的控件都是View或者View的子類,它其實表示的就是屏幕上的一塊矩形區域,用一個Rect來表示,left,top表示View相對於它的pare
Android使用Bmob移動後端雲Restful API需要注意的問題
如果你自己想做一個客戶端玩玩,但是又不想去搭建後台服務器,顯然Bmob移動後端雲是你的最佳選擇。官方地址見bmob,他提供了Android的sdk,同樣也提供了Restf
Android進程狀態的切換實現教程
進程狀態轉換,同樣可用於線程的狀態轉移一、進程狀態進程的生命周期內,有5種狀態,分別為new, runnable, running, blocked, de