1:Activity的创建:
1)①选中包名-->new-->Java Class-->继承Activity
②重写方法onCreate,在该方法中给Activity关联一个布局文件
③在AndroidManifest.xml文件中的application 节点下注册。Activity,必须要在AndroidManifest清单文件中进行注册。如果没有配置,而又在程序中启动了该Activity,将抛出异常(ActivityNotFoundException)
2)选中包名-->new-->Activity(会自动创建和关联布局)
2.Activity 的启动
①. 在Android应用里各组件之间通信使用Intent。一个Activity通过Intent来表达自己的“意图”。
②. 常用有两种方式:
- Intent intent = new Intent(MainActivity.this , NextActivity.class);
- Intent intent = new Intent();
- intent.setClass(MainActivity.this , NextActivity.class);
③.常用启动方式有两种:
- startActivity();
- startActivityForResult();//需要回传数据时使用
Activity之间跳转和交换数据:
①数据传到下一个页面
由MainActivity跳转到FirstActivity代码如下
Intent intent =new Intent(MainActivity.this,FirstActivity.class);
//传字符串
intent.putExtra("value1","我是由MainActivity传过来的数据");
intent.putExtra("value2",100);//传整数
startActivity(intent);
在FirstActivity中接收数据
String str= intent.getStringExtra("value1");
int intValue= intent.getIntExtra("value2",0);
②数据回传(SecondActivity回传数据到MainActivity)
MainActivity中跳转
Intent intent2 = new Intent(MainActivity.this, SecondActivity.class);
startActivityForResult(intent2, 1111);
在MainActivity中
重写onActivityResult接收数据
if (requestCode == 1111) {//与跳转中requestCode 对应
if(resultCode==RESULT_OK)
{
String str= data.getStringExtra("str");
mTextView3.setText(str);
}
}
SecondActivity中设置数据
Intent intent=new Intent();
intent.putExtra("str","我是SecondActivity中回传的数据");
setResult(RESULT_OK,intent);
finish();