Android開發系列(十) Intent的使用

來源:互聯網
上載者:User

  本節不打算繼續講Android介面開發,而是講一下Intent, 之後可能會把QQ登陸介面、聊天介面做出來,不過聊天介面可能會等我複習完Sqlite資料庫之後再考慮,不過還是先記錄一下本節的內容,以備以後參考。

 

  Intent 用於啟動一個Activity 或 Service或者BroadCast。

1、      可以使用setClass或者在建構函式中設定原Activity或者目標Activity,這樣就可以顯示的指定跳轉的對象。

 

 

2、      也可以通過setAction方法為Intent對象設定Action屬性(一個字串),然後啟動intent, intent會根據在AndroidManifest.xml中的Activity的註冊資訊的intent-filter自動篩選合格對象。

      這裡要注意:

新建立的一個Activity必須在AndroidManifest.xml中註冊,註冊時如果沒有<intent-filter>  </intent-filter> 那麼只需配置一下名字即可,但如果有intent-filter,就必須包含

<action />和 <category  />屬性,其中普通Activity的category屬性一般可以是  <category android:name="android.intent.category.DEFAULT"/>

      /*****example*****/

AndroidManifest.xml 

<intent-filter>

      <action android:name="Action information"  />

      <category android:name="android.intent.category.DEFAULT" />

</intent-filter>

 

MainActivity.java

Intent intent=new Intent();

intent.setAction("Action Inforation");

startActivity(intent);                                          //注意這裡的Action Information的形式是任意的,但是必須不能與其他的Activity發生衝突

       /****************/

 

3、可以通過addCategory設定category對啟動的Activity做進一步的限定。

AndroidManifest.xml 

<intent-filter>

 

      <action android:name="Action information"  />

  

  <category android:name="TSIDJ" />

      <category android:name="android.intent.category.DEFAULT" />

 

</intent-filter>

 

MainActivity.java

Intent intent=new Intent();

intent.setAction("Action Inforation");

intent.addCategory("TSIDJ");

startActivity(intent);                                      

//注意由addCategory()這一屬性就能看出,這是添加了一個附加的屬性,要注意兩點:1、categeory屬性DEFAULT不能省略; 2、category不能單獨實現Activity的跳轉,而Action獨自就可以實現Activity跳轉,category只是作為一個附加條件,即如果action/data資訊相同而category資訊不同也無法啟動Activity

 

今天就寫這麼多吧早點休息了。。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

    

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.