Home 主頁 Service 服務計畫 Android App 手機程式 Expertise 專業領域 Blog 博客 Download 下載 FAQ 網頁製作常見問題 Support 支援 Links 友情連結 Contact Us 聯絡我們

5 - Explicit Intent

發佈: 08-05-2011

分類: Android 開發教學

第五課:使用Explicit Intent

本文講解如何從一個activity跳到另一個activity。一如前文所說,intent是asyn message,要跟不同元件通訊,便要用到intent。 現在介紹explict intent,換句話說,你知道你即將呼叫activity的名稱。這次我們要建立2個activity,ExplicitIntentExampleActivity和detail, ExplicitIntentExampleActivity中有一個button,按下便到跳到detail activity。detail中又有一個back的button,按下便回到ExplicitIntentExampleActivity。

建立一個新的project,名為ExplicitIntentExample。edit main.xml,把本來的textview刪去,加上一個button (id=btnDetail)。 新增另一個layout xml file,名為detail.xml。為自動生成的textview加上一點文字,這個就是detail activity的layout文件。

main.xml




    



detail.xml








回到ExplicitIntentExampleActivity,利用上一課中的findViewById,找出btnDetail,在onClick的時候建立一個explict intent,利用startActivity(intent) 去開始該activity。

btnDetail = (Button) findViewById(R.id.btnDetail);
btnDetail.setOnClickListener(new View.OnClickListener() {
  public void onClick(View v) {
    Intent i = new Intent();
    i.setClass(ExplicitIntentExampleActivity.this, Detail.class);
    startActivity(i);				
  }
});

建立一個detail activity。在onCreate()中,為它設定好layout為detail.xml。找出btnBack,onClick時呼叫finish()。

setContentView(R.layout.detail);

btnBack = (Button) findViewById(R.id.btnBack);
btnBack.setOnClickListener(new View.OnClickListener() {
  public void onClick(View v) {
    finish();				
  }
});

當你呼叫finish()時,系統就會回到之前的activity(即ExplicitIntentExampleActivity)。

最後,還有一步很重要,但常忘記的事,就是把所有的activity都加到androidManifest.xml中。


Download: Source code

訪客: Copyright ©2011 KF Software House 版權所有 | 網站地圖