Servlet的理解
类比Activity与Servlet
Intent的理解
Intent 直译为意图
Intent的分类
IntentFilter的理解
相关API:
相关API
结束一个Activity
启动一个Activity的流程图:
Activity界面的四种状态
测试用例:
1.界面从死亡-->运行
创建对象-->onCreate()-->onStart() -->onResume()-->可见可操作(运行状态)
2.界面从 运行-->死亡
onPause()-->onStart() -->onDestroy()-->Activity对象成为垃圾对象(死亡状态)
3.界面从 运行-->停止
onPause()-->onStart()
4.界面从 停止-->运行
onRestart()-->onStart()-->onResume()
5.界面从 运行-->暂停
onPause()
6.界面从 暂停-->运行
onResume()
match_parent 填充父窗体
wrap_content 包裹内容
hint属性: 提示信息
android:id="@+id/et_main_msg"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="@string/tips"
//初始化视图对象
et_main_msg=(EditText) findViewById(R.id.et_main_msg);
btn_main_start1=(Button) findViewById(R.id.btn_main_start1);
btn_main_start2=(Button) findViewById(R.id.btn_main_start2);
//设置点击监听
btn_main_start1.setOnClickListener(this);
btn_main_start2.setOnClickListener(this);
public void onClick(View v){//v 就是发生的事件 (用户操作的)视图对象
if (v==btn_main_start1){
// Toast.makeText(this, "一般启动", Toast.LENGTH_SHORT).show();
//1.创建Intent对象(显示)
Intent intent = new Intent(this,SecondActivity.class);
//2 通过Intent携带额外数据 trim 去首尾空格
String message = et_main_msg.getText().toString().trim();
intent.putExtra("MSG", message); // map保存
//3.启动Activity
startActivity(intent);
}else if(v==btn_main_start2){
// Toast.makeText(this, "带回调启动", Toast.LENGTH_SHORT).show();
//1.创建Intent对象(显示)
Intent intent = new Intent(this,SecondActivity.class);
//2 通过Intent携带额外数据 trim 去首尾空格
String message = et_main_msg.getText().toString().trim();
intent.putExtra("MSG", message); // map保存
//3.带回调的启动Activity
int requestCode=2;
startActivityForResult(intent, requestCode);
}
}
protected void onActivityResult(int requestCode, int resultCode, Intent data){
//判断Code 请求码 结果码
if (requestCode==2 && resultCode==3 ){
//从data中取出数据
String result = data.getStringExtra("RESULT");
//显示
et_main_msg.setText(result);
}
}
//界面二
public class SecondActivity extends Activity{
private EditText et_second_msg;
protected void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_second);
//4.得到Intent对象
Intent intent = getIntent();
//5.读取数据
String message = intent.getStringExtra("MSG");
//6.显示到EditText中
et_second_msg.setText(message);
}
public void back1(View v){
/关闭当前界面
finish();
}
public void back2(View v){
//保存一个结果
int resultCode =3;
//准备一个携带额外数据的Intent对象
Intent data= new Intent();
String result = et_second_msg.getText().toString().trim();
data.putExtra("RESULT", result);
//设置结果
setResult(resultCode, data);
//关闭当前界面
finish();
}
}