//主activity代码中如下
public class MainActivity extends ActionBarActivity {
private Button button;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//实现屏幕之间切换的效果
button=(Button) this.findViewById(R.id.button1);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
//第一种方式
//Intent intent=new Intent(this,NextActivity.class);//不对
//此时只写一个this是不对的,因为new View.OnClickListener() {}是一个匿名的内部类,this不能表示MainActivity
Intent intent=new Intent(MainActivity.this,NextActivity.class);
startActivity(intent);//启动activity
/*//第二种方式
Intent intent=new Intent();
intent.setClass(MainActivity.this, NextActivity.class);
startActivity(intent);*/
/*//第三种方式
//里面用的是一个action,此时要在清单文件中要跳转到的目的页的activity之间增加一个意图过滤器
Intent intent=new Intent("com.example.android_activitystate.NextActivity");
startActivity(intent);*/
/*//第四种方式
Intent intent=new Intent();
intent.setAction("com.example.android_activitystate.NextActivity");
startActivity(intent);*/
}
});
}
清单文件AndroidManifest.xml中如下
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name=".MainActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name=".NextActivity">
<intent-filter>
<!-- 名字随便起,不过最好还是有意义,一般是加上清单文件中的package包名,格式如下 -->
<action android:name="com.example.android_activitystate.NextActivity">
</action>
<category android:name="android.intent.category.DEFAULT">
</category>
</intent-filter>
</activity>
</application>