这篇文章给大家介绍Android中怎么实现时钟特效,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。
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); } }}
关于Android中怎么实现时钟特效就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。