Activity的理解

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();

}

}


猜你喜欢

转载自blog.csdn.net/summerkang/article/details/80184738