您的位置:首页 > 移动开发 > Android开发

Android各个activity之间(页面之间)的切换实现方式(推荐第一种方式)

2015-11-16 11:31 633 查看
//主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>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: