Activity之间的跳转(Activity和intent)
2015-11-29 13:13
337 查看
Activity之间的跳转(Activity和intent)
Activity和intent
Intent的基本作用:intent是一个对象,包含一组信息
1.component name (指定启动哪一个activity)
2.action (下一个Activity的动作 值有:ACTION_CALL,ACTION_EDIT....)
3.data (传递数据)
4.extras (存放键值对)
5.flags
6.category
在第一个activity中向intent中存放键值对传递到另外一个activity中,另外一个activity可以从得到intent对象中取出键值对
主要试下两个Activity之间的跳转:
1.创建项目:
主方法命名为Activity01,,先按照上一篇创建Activity的方法将主方法Activity01创建好,包含一个TextView和一个Button
布局文件写好,并在主方法中根据id调用,配置好字符串value,并在AndroidMenifest.xml文件中配置,所有工作完成。
(详见创建第一个Activity详细方法)
效果如图:
此时已经能显示TextView和一个button 不过点击button并没有效果
2.接下来创建另外一个Activity:
在Activity01相同目录下创建一个class 命名为Activity02 继承至Activity
为Activity02添加 onCreate方法:
在空白处右键-->source-->Override implement Methods..-->onCreate(Bundle) 勾选即可
在res目录下layout下创建相应的布局文件:
选择new-->file--为文件命名,尽量与第一个命名方式相同:
为图方便,在第二个布局文件中可以借鉴第一个布局文件的代码,复制后一定要注意修改,修改后即可使用。
同样为activity_activity02.xml中添加一个TextView,并加上id,在Activity02.Java中根据id引用。
4.在AndroidManifest.xml文件中配置第二个Activity(配置方法仿照第一个Activity):
setContentView(R.layout.activity_activity02);添加组件的方法不做赘述。
6.回到第一个Activity文件中 设置事件监听,并实现跳转功能:
class ButtonListener implements OnClickListener{
//出错时选择第三个 change to ‘OnClickListener’(android.view.View)
//再选择第一个 Add unimplemented methods
}
相应代码直接贴出来:
注意事项:
一定要在androi.Manifest.xml文件中 配置Activity,否则会出错,最容易出错的地方
在value下string.xml文件中修改字符串的值,不要在布局文件中直接修改
布局文件添加id后会在R文件中自动生成,调用根据id
难点在于添加时间监听,实现跳转。
创建第一个Activity详细步骤点击查看详细步骤
Activity和intent
Intent的基本作用:intent是一个对象,包含一组信息
1.component name (指定启动哪一个activity)
2.action (下一个Activity的动作 值有:ACTION_CALL,ACTION_EDIT....)
3.data (传递数据)
4.extras (存放键值对)
5.flags
6.category
在第一个activity中向intent中存放键值对传递到另外一个activity中,另外一个activity可以从得到intent对象中取出键值对
主要试下两个Activity之间的跳转:
1.创建项目:
主方法命名为Activity01,,先按照上一篇创建Activity的方法将主方法Activity01创建好,包含一个TextView和一个Button
布局文件写好,并在主方法中根据id调用,配置好字符串value,并在AndroidMenifest.xml文件中配置,所有工作完成。
(详见创建第一个Activity详细方法)
效果如图:
此时已经能显示TextView和一个button 不过点击button并没有效果
2.接下来创建另外一个Activity:
在Activity01相同目录下创建一个class 命名为Activity02 继承至Activity
为Activity02添加 onCreate方法:
在空白处右键-->source-->Override implement Methods..-->onCreate(Bundle) 勾选即可
package com.example.test; import android.app.Activity; import android.os.Bundle; public class Activity02 extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { // TODO Auto-generated method stub super.onCreate(savedInstanceState); } }3.为Activity02创建布局文件:
在res目录下layout下创建相应的布局文件:
选择new-->file--为文件命名,尽量与第一个命名方式相同:
为图方便,在第二个布局文件中可以借鉴第一个布局文件的代码,复制后一定要注意修改,修改后即可使用。
同样为activity_activity02.xml中添加一个TextView,并加上id,在Activity02.Java中根据id引用。
4.在AndroidManifest.xml文件中配置第二个Activity(配置方法仿照第一个Activity):
<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.test" android:versionCode="1" android:versionName="1.0" > <uses-sdk android:minSdkVersion="8" android:targetSdkVersion="18" /> <application android:allowBackup="true" android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:theme="@style/AppTheme" > <activity android:name="com.example.test.Activity01" 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="com.example.test.Activity02" android:label="@string/app_name" ></activity> </application> </manifest>5.配置完成后可以写Activity02.java 注意手动添加layout文件
setContentView(R.layout.activity_activity02);添加组件的方法不做赘述。
6.回到第一个Activity文件中 设置事件监听,并实现跳转功能:
class ButtonListener implements OnClickListener{
//出错时选择第三个 change to ‘OnClickListener’(android.view.View)
//再选择第一个 Add unimplemented methods
}
相应代码直接贴出来:
package com.example.test; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.view.Menu; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.TextView; public class Activity01 extends Activity { private TextView TextView1; private Button button1; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_activity01); TextView1=(TextView)findViewById(R.id.textView1); TextView1.setText(R.string.TextView1); button1=(Button)findViewById(R.id.button1); button1.setText(R.string.button1); button1.setOnClickListener(new ButtonListener()); } class ButtonListener implements OnClickListener{ @Override public void onClick(View arg0) { // TODO Auto-generated method stub Intent intent =new Intent(); intent.setClass(Activity01.this,Activity02.class); Activity01.this.startActivity(intent); } } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.activity01, menu); return true; } }保存后即可运行。
注意事项:
一定要在androi.Manifest.xml文件中 配置Activity,否则会出错,最容易出错的地方
在value下string.xml文件中修改字符串的值,不要在布局文件中直接修改
布局文件添加id后会在R文件中自动生成,调用根据id
难点在于添加时间监听,实现跳转。
创建第一个Activity详细步骤点击查看详细步骤
相关文章推荐
- 普通方法验证 邮箱正确性
- mysql支持的数据类型简介
- C++的chrono、ratio和ctime等头文件
- Java - 认识 JDBC
- 直接跳转到appStore
- .**信息安全系统设计基础第十二周学习总结
- 大话设计模式之面向对象基础篇(三)
- python之Flask初体验
- linux 系统11步yum安装MySQL数据库
- oracle 11g创建与管理用户
- 单例模式
- js小时钟
- Android AutoLayout全新的适配方式 堪称适配终结者
- OpenCV中debug与release的问题
- 1.交通聚类:编辑距离 (Levenshtein距离)Java实现
- iOS中的#import和class区别
- 南大软院大神养成计划第十四天
- 快速排序
- Android 开源框架Universal-Image-Loader完全解析(三)---源代码解读
- 企业汇报系统细节追加(三)