Android实现时钟特效
本文实例为大家分享了Android实现时钟特效的具体代码,供大家参考,具体内容如下
效果展示:
功能介绍:
如果您想换一张背景图,可以点击左下角按按钮切换背景图片。
如果您不想看见右上方的日期,可以点击它,他就会随即隐藏。如果你想再次查看,请点击左下角切换壁纸按钮他就会被再次展示。
Demo下载地址:
点击此处跳转:AndroidClockDemo
部分代码展示:
mainActivity部分:
实现切换,获得事件并显示等功能。
publicclassMainActivityextendsAppCompatActivity{ privateint[]imageIds=newint[]{ R.drawable.bac_1, R.drawable.bac_2, R.drawable.bac_3, R.drawable.bac_4 }; privateintnum=1;//num用于确定背景图 privatebooleanflagI=true;//i用于控制日期显隐 privateImageViewimageView; privateTextViewtextView; privateTextViewtextViewDate; privateHandlerhandler=newHandler(){ @Override publicvoidhandleMessage(Messagemsg){ SimpleDateFormatsimpleDateFormat=newSimpleDateFormat("HH:mm:ss");//HH:mm:ss //获取当前时间 Datedate=newDate(System.currentTimeMillis()); textView.setText(""+simpleDateFormat.format(date)); simpleDateFormat=newSimpleDateFormat("yyyy年MM月dd日");//HH:mm:ss textViewDate.setText(""+simpleDateFormat.format(date)); } }; @Override protectedvoidonCreate(BundlesavedInstanceState){ 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); } //事件刷新线程 privatevoidrefreshTime(){ newThread(){//每秒更新时间 @Override publicvoidrun(){ while(true){ Messagemeg=newMessage(); handler.sendMessage(meg); try{ sleep(1000); }catch(InterruptedExceptione){ e.printStackTrace(); } } } }.start(); } //日期显隐点击事件 publicvoidshow(Viewview){ if(flagI){ textViewDate.setVisibility(View.GONE); flagI=false; }//重新显现方法在背景按钮上 } //悬浮按钮更换背景 publicvoidchange(Viewview){ imageView.setImageResource(imageIds[num++]); num%=4; textViewDate.setVisibility(View.VISIBLE); flagI=true; } //设置系统菜单为透明 privatevoidtransparency(){ if(Build.VERSION.SDK_INT>=21){ ViewdecorView=getWindow().getDecorView(); decorView.setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN|View.SYSTEM_UI_FLAG_LAYOUT_STABLE); getWindow().setStatusBarColor(Color.TRANSPARENT); } } }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。