本文实例为大家分享了Android实现时钟特效的具体代码,供大家参考,具体内容如下
效果展示:
<强>功能介绍:强>
如果您想换一张背景图,可以点击左下角按按钮切换背景图片。
如果您不想看见右上方的日期,可以点击它,他就会随即隐藏。如果你想再次查看,请点击左下角切换壁纸按钮他就会被再次展示。
<强>演示下载地址:强>
点击此处跳转:AndroidClockDemo
<强>部分代码展示:强>
mainActivity部分:
实现切换,获得事件并显示等功能。
公开课MainActivity延伸AppCompatActivity { 私人int [] imageid=new int [] { R.drawable.bac_1, R.drawable.bac_2, R.drawable.bac_3, R.drawable.bac_4 }; 私人int num=1;//num用于确定背景图 私人布尔flagI=true;//我用于控制日期显隐 私人ImageView ImageView; 私人TextView TextView; 私人TextView textViewDate; 私人处理程序处理程序=new处理程序(){ @Override 公共空间handleMessage(消息味精){ SimpleDateFormat SimpleDateFormat=new SimpleDateFormat (HH: mm: ss);//HH: mm: ss//获取当前时间 日期日期=new日期(System.currentTimeMillis ()); textView。setText (" + simpleDateFormat.format(日期)); simpleDateFormat=new simpleDateFormat (“yyyy年MM月dd日”);//HH: MM: ss textViewDate。setText (" + simpleDateFormat.format(日期)); } }; @Override 保护无效onCreate(包savedInstanceState) { super.onCreate (savedInstanceState); setContentView (R.layout.activity_main); setRequestedOrientation (ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE); 透明度();//系统状态栏透明 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); }//事件刷新线程 私人空间refreshTime () { 新线程(){//每秒更新时间 @Override 公共空间run () { 而(真){ 消息梅格=新消息(); handler.sendMessage (meg); 尝试{ 睡眠(1000); }捕捉(InterruptedException e) { e.printStackTrace (); } } } }.start (); }//日期显隐点击事件 公共空间显示(视图视图){ 如果(flagI) { textViewDate.setVisibility (View.GONE); flagI=false; }//重新显现方法在背景按钮上 }//悬浮按钮更换背景 公共空间变化(查看视图){ imageView.setImageResource (imageid (num + +)); num %=4; textViewDate.setVisibility (View.VISIBLE); flagI=true; }//设置系统菜单为透明 私人空间透明度(){ 如果(Build.VERSION。SDK_INT祝辞=21){ .getDecorView视图decorView=getWindow () (); decorView.setSystemUiVisibility(视图。SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN | View.SYSTEM_UI_FLAG_LAYOUT_STABLE); getWindow () .setStatusBarColor (Color.TRANSPARENT); } } }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。