Android实现时钟特效

本文实例为大家分享了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);

}

}

}

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

以上是 Android实现时钟特效 的全部内容, 来源链接: utcz.com/p/242276.html

回到顶部