android应用的开启动画实现

比如说:A.java为开启动画,,之后就进入B.java

1.A.java

protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
   Log.i("启动动画", "启动动画");
//去除标题
requestWindowFeature(Window.FEATURE_NO_TITLE);
//设置全屏
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, 
WindowManager.LayoutParams.FLAG_FULLSCREEN);

setContentView(R.layout.activity_start);
//开启动画持续的时间
new Handler().postDelayed(new Runnable() {

@Override
public void run() {
// TODO Auto-generated method stub
Intent intent=new Intent(StartActivity.this,
MainActivity.class);
startActivityForResult(intent,10);


}
}, 1000*2);
}



@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
// TODO Auto-generated method stub
Log.i("StartActivity+有数据返回", requestCode+"");
super.onActivityResult(requestCode, resultCode, data);
if(resultCode==20){
finish();
}
}

2.B.java

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// 设置响应,让StartActivity()关闭自己
setResult(20); 
setContentView(R.layout.activity_main);
 


}

//解释

1.new Handler().postDelayed(new Runnable() {。。。}

延迟intent跳转

2.startActivityForResult(intent,10);

参数:(Intent intent, Int requestCode)

requestCode用于后期销毁时使用。

3. onActivityResult(int requestCode, int resultCode, Intent data) {

resultCode:代表B.java返回的数据,当B.java启动后会发送数据。

A.java根据数据,自己销毁。

4. setResult(20); 

B.java中设置的返回给A.java的数据,A.java根据数据,自己销毁。



郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。