android几个知识点总结(全屏显示,倒计时,页面切换动画效果,obtainmessage)

1、全屏显示,没有状态栏和标题栏

在androidManifes文件中设置android:theme="@android:style/Theme.NoTitleBar"

在Activity当中设置 this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,

 WindowManager.LayoutParams.FLAG_FULLSCREEN);

2android倒计时功能的实现(CountDownTimer

    主要是重写onTickonFinsh这两个方法,onFinish()中的代码是计时器结束的时候要做的事情;onTick(Long m)中的代码是你倒计时开始时要做的事情,参数m是直到完成的时间,构造方法中的两个参数中,前者是倒计的时间数,后者是倒计每秒中间的间隔时间,都是以毫秒为单位。例如要倒计时30秒,每秒中间间隔时间是1秒,两个参数可以这样写new CountDownTimer(30000,1000)将后台线程的创建和Handler队列封装成为了一个方便的类调用。 当你想取消的时候使用该对象的cancel()方法就行了。

newCountDownTimer(2000, 1000) {

          @Override

          publicvoid onFinish() {

             // TODO Auto-generatedmethod stub

             Intent intent = new Intent();

             intent.setClass(WelcomeActivity.this, MainDemo.class);

             startActivity(intent);

             int VERSION = Integer.parseInt(android.os.Build.VERSION.SDK);

             if(VERSION>=5) {

             WelcomeActivity.this.overridePendingTransition(R.anim.alpha_in, R.anim.alpha_out);    //WelcomeActivity.this.overridePendingTransition(R.anim.zoomin,R.anim.zoomout);

}

             finish();

          }

          @Override

          publicvoid onTick(long millisUntilFinished) {         

          }      

       }.start(); 

3、activity之间的切换动画效果

       在Android的2.0版本之后,有了一个函数来帮我们实现这个切换动画。也不用定义theme什么的了,这个函数就是overridePendingTransition
这个函数有两个参数,一个参数是第一个activity退出时的动画,另外一个参数则是第二个activity进入时的动画。
这里需要特别说明的是,关于overridePendingTransition这个函数,有两点需要主意:
1.它必需紧挨着startActivity()或者finish()函数之后调用
2.它只在android2.0以及以上版本上适用
----------overridePendingTransition(R.anim.enter, R.anim.exit);//(新Activity进来的动画,旧的退出的动画)

   Intent intent = new Intent();
    intent.setClass(WelcomeActivity.this, MainDemo.class);
    startActivity(intent);
    int VERSION = Integer.parseInt(android.os.Build.VERSION.SDK);
    if(VERSION>=5) {//android2.0版本以上才可以
    WelcomeActivity.this.overridePendingTransition(R.anim.alpha_in, R.anim.alpha_out);
//     WelcomeActivity.this.overridePendingTransition(R.anim.zoomin,R.anim.zoomout);
    //WelcomeActivity.this.overridePendingTransition(android.R.anim.slide_in_left, android.R.anim.slide_out_right);
    }

4、 handler.obtainMessage()和new Message()的区别

obtainmessage()是从消息池中拿来一个msg 不需要另开辟空间new

new需要重新申请,效率低,obtianmessage可以循环利用;

Message msg = handler.obtainMessage();  

 msg.arg1 = i; 

 msg.sendToTarget();    //message 从handler 类获取,从而可以直接向该handler 对象发送消息

Message msg=new Message(); 

 msg.arg1=i; 

 handler.sendMessage(msg);  //直接调用 handler 的发送消息方法发送消息

 


    

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值