摘要:[Basic Andriod 讀書會] 2.2 INTENTS
兩個Activity互動可利用INTENTS
範例功能:MainActivity中有一個Button,按下去之後會連到SecondActivity
實作要點
1.先準備兩個Activity: MainActivity 與SecondActivity
2.修改AndroidManifest.xml (類似C#的專案檔)
加入下面程式
<activity
android:label="Second Activity"
android:name=".SecondActivity"> <!-- lable是Activity的名稱,name是ClassName -->
<intent-filter >
<action android:name="com.example.SecondActivity" /> <!-- intent透過這串名稱,呼叫SecondActivity -->
<category android:name="android.intent.category.DEFAULT" /><!-- 這一段記得加上,才能讓目前這個Activity被呼叫端的Activity透過StartActivity呼叫 -->
</intent-filter>
</activity>
3. 在MainActivity的Layout中加入Button完之後,編寫onClick的java程式如下。留意 startActivity(new Intent("com.example.SecondActivity"));這段,如果要叫用的Activity是在同一個專案中,也可以寫成 startActivity(new Intent(this, SecondActivity.class));
package com.example.usingintent;
import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.view.Menu;
import android.view.View;
public class MainActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.activity_main, menu);
return true;
}
public void onClick(View view) {
startActivity(new Intent("com.example.SecondActivity"));
}
}