android Intent學習總結

來源:互聯網
上載者:User

基本模式:

1、firstActivity裡面:

Intent intent = new Intnet();

intent.setClass(firstActivity.this, secondActivity.class);

startActivity(intent);

2、AndroidManifest.xml裡面加許可權

</activity android:name="secondActivity"

                android:label="text"

</activity>

3、secondActivity

Intent intent = getIntent();

從而去得到自己需要的東西。

4、Intent的Flags屬性

一、Activity和Task(棧)的關係
  Task就像一個容器,而Activity就相當與填充這個容器的東西,第一個東西 (Activity)則會處於最下面,最後添加的東西(Activity)則會在最低端。從Task中取出東西(Activity)則是從最頂端取出,也 就是說最先取出的是最後添加的東西(Activity),一次類推,最後取出的是第一次添加的Activity,而Activity在Task中的順序是
可以控制的,那則在Activity跳轉時用到Intent Flag
  二、介面跳轉和服務的啟動都會用到Intent,現在介紹Intent Flag是關於Activity的跳轉
  Intent intent = new Intent(this,xxx.class);
  //如果activity在task存在,拿到最頂端,不會啟動新的Activity
  intent.addFlags(Intent.FLAG_ACTIVITY_BROUGHT_TO_FRONT);
  //如果activity在task存在,將Activity之上的所有Activity結束掉
  intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
  //預設的跳轉類型,將Activity放到一個新的Task中
  intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
  //如果Activity已經運行到了Task,再次跳轉不會在運行這個Activity
  intent.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.