Intent用於啟用元件和攜帶資料,Activity就是重要的元件之一,本文將主要介紹啟用Activity元件的4種方法。
工具/原料
eclipse
方法/步驟
如圖所示,MainActivity的佈局如圖1所示,用新建Activity嚮導新建一個名為MsgAtivity的活動,佈局如圖2所示。下面主要討論如何在MainActivity通過點選資訊按鈕啟用MsgAtivity的方法。
啟用Ativity方法1:intent.setClass(MainActivity.this, MsgActivity.class)是設定要啟用的元件是什麼,這樣呼叫startActivity(intent)時就知道要去啟用哪個Activity了。
啟用Ativity方法2:這個方法區別在用intent.setClassName(MainActivity.this, "com.example.ativityexample.MsgActivity")來設定要啟用的元件,你可以理解為"com.example.ativityexample.MsgActivity"經過方法處理後最終還是獲得MsgActivity.class類。
啟用Ativity方法3:這個方法區別也是在於用了intent.setComponent(new ComponentName(MainActivity.this, MsgActivity.class) )設定要啟用的元件,這個方法可能更容易理解。上面這三種方法沒有實質性上的區別,用哪個都可以。
啟用Ativity方法4:這個方法不僅可以啟用本應用的元件,也可以啟用其他應用的元件。觀察intent.setClassName("com.example.ativityexample", "com.example.ativityexample.MsgActivity")就會發現它的形參包括包名。跨應用啟用的前提是有要啟用元件的許可權或者要啟用元件的許可權沒有設定。
程式執行:不同的方法我們都分別執行,只要點選資訊按鈕都可以啟用另一個Activity。