当前位置: 移动技术网 > IT编程>移动开发>Android > Android实现时钟特效

Android实现时钟特效

2020年03月09日  | 移动技术网IT编程  | 我要评论

netstat命令详解,胶济线,魔兽大拇指

本文实例为大家分享了android实现时钟特效的具体代码,供大家参考,具体内容如下

效果展示:

功能介绍:

如果您想换一张背景图,可以点击左下角按按钮切换背景图片。
如果您不想看见右上方的日期,可以点击它,他就会随即隐藏。如果你想 再次查看,请点击左下角切换壁纸按钮他就会被再次展示。

demo 下载地址:

点击此处跳转:androidclockdemo

部分代码展示:

mainactivity部分:

实现切换,获得事件并显示等功能。

public class mainactivity extends appcompatactivity {
  private int[] imageids = new int[]{
      r.drawable.bac_1,
      r.drawable.bac_2,
      r.drawable.bac_3,
      r.drawable.bac_4
  };
  private int num = 1;     //num用于确定背景图
  private boolean flagi = true;//i 用于控制日期显隐
  private imageview imageview;
  private textview textview;
  private textview textviewdate;
  private handler handler = new handler(){
    @override
    public void handlemessage(message msg) {
      simpledateformat simpledateformat = new simpledateformat("hh:mm:ss");// hh:mm:ss
      //获取当前时间
      date date = new date(system.currenttimemillis());
      textview.settext("" + simpledateformat.format(date));
      simpledateformat = new simpledateformat("yyyy年mm月dd日");// hh:mm:ss
      textviewdate.settext("" + simpledateformat.format(date));
    }
  };
  @override
  protected void oncreate(bundle savedinstancestate) {
    super.oncreate(savedinstancestate);
    setcontentview(r.layout.activity_main);
    setrequestedorientation(activityinfo.screen_orientation_landscape);
    transparency();//系统状态栏透明
    textview = (textview) findviewbyid(r.id.txt);
    imageview = (imageview) findviewbyid(r.id.background);
    textviewdate = (textview) findviewbyid(r.id.date);
    refreshtime();
    getwindow().addflags(windowmanager.layoutparams.flag_keep_screen_on);
  }
  //事件刷新线程
  private void refreshtime(){
    new thread(){//每秒更新时间
      @override
      public void run() {
        while (true){
          message meg = new message();
          handler.sendmessage(meg);
          try {
            sleep(1000);
          } catch (interruptedexception e) {
            e.printstacktrace();
          }
        }
      }
    }.start();
  }
  //日期显隐点击事件
  public void show(view view){
    if(flagi) {
      textviewdate.setvisibility(view.gone);
      flagi = false;
    }//重新显现方法在背景按钮上
  }
  //悬浮按钮 更换背景
  public void change(view view){
    imageview.setimageresource(imageids[num++]);
    num %= 4;
    textviewdate.setvisibility(view.visible);
    flagi = true;
  }
  //设置系统菜单为透明
  private void transparency(){
    if (build.version.sdk_int >= 21) {
      view decorview = getwindow().getdecorview();
      decorview.setsystemuivisibility(view.system_ui_flag_layout_fullscreen | view.system_ui_flag_layout_stable);
      getwindow().setstatusbarcolor(color.transparent);
    }
  }
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持移动技术网。

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网