編輯:關於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 計算器界面布局這一節,我們將完成計算器的界面布局,讓它初具計算器的模樣。計算
ViewAndroid所有的控件都是View或者View的子類,它其實表示的就是屏幕上的一塊矩形區域,用一個Rect來表示,left,top表示View相對於它的pare
如果你自己想做一個客戶端玩玩,但是又不想去搭建後台服務器,顯然Bmob移動後端雲是你的最佳選擇。官方地址見bmob,他提供了Android的sdk,同樣也提供了Restf
進程狀態轉換,同樣可用於線程的狀態轉移一、進程狀態進程的生命周期內,有5種狀態,分別為new, runnable, running, blocked, de