Android學習筆記之Intent

2021-07-04 06:15:55 字數 2143 閱讀 4170

例如:startactivity(new intent(mainactivity.this,myaty.class));

使用startactivity方法後出現at dalvik.system.nativestart.main(native method),這一錯誤的原因是因為忘了在androidmanifest.xml中配置新的activity,或者經常有人打錯了activity的名字,從而導致錯誤的出現。

如果是從a應用來啟動b應用就需要隱式意圖,顯示意圖無法實現。如果不允許其他應用訪問可以在activity節點新增android:exported=「false」來設定。若強行啟動會丟擲安全異常,可以捕獲。

隱式intent可以多匹配,彈出對話方塊供使用者選擇activity.

intent-filter節點中

action節點中android:name屬性來指定宣告的元件可以對什麼名稱的動作的意圖來執行服務和處理。每乙個intent-filter至少有乙個action節點,否則任何intent請求都不能和該intent-filter匹配。

category節點中android:name屬性來指定宣告的元件可以對什麼種類的意圖進行處理和服務。

其中browsable:表明所宣告的activity可以在瀏覽器當中通過傳送意圖而啟用。

default:對沒有設定種類的intent物件進行處理和服務。

gadget:擁有嵌入其他activity當中執行的能力。

home:按下home鍵就會看到所宣告的activity。

launcher:作為程式的主入口。

data節點作為對可操作的資料進行描述,描述可以是資料型別,也可以是uri。

android:scheme是url的協議,這個屬性必須宣告了,其他屬性才有意義。

android:host是uri的主機名。

android:mimetype是mime的**型別

android:path是用來匹配完整路徑的

android:pathprefix是用來匹配路徑的開頭部分

android:pathpattern是用表示式來匹配整個路徑

android:port是uri的埠,指定了sheme和host才有意義。

1.只要activity中的action或者category任意一項匹配即可,呼叫的方法是intent.setaction(「com.example.chapter3.test」);或者intent.addcategory(「…..」)

2.也可以通過data節點配對,例如

則使用方法intent.setdataandtype(uri.parse(「 「audio/*」);

Android學習筆記之fragment

fragment 二 有什麼用?一般介面設計 通過fragment實現 三 fragment怎麼用 生命週期方法被呼叫契機 新建乙個類繼承fragment或者fragment的派生類 listfragment preferencefragment 2.fragment新增使用者介面 引數 注 如果你...

android學習筆記之Activity

建立activity 的要點 乙個activity 就是乙個類,並且這個類要繼承activity 需要複寫oncreate方法 每乙個activity 都需要在androidmanifest.xml 中進行配置,包含filter 的為主activity。為activity新增必要的控制項 activ...

android學習筆記之Handler

handler handler new handler runable update new runnable publicvoid run system.out.println update handler.postdelayed update,3000 3秒後將update執行緒新增到佇列中 h...