|
本帖最后由 翌阳 于 2017-4-27 08:20 编辑
新版的在此贴:
手机上的电子钟程序APK之三(闲置手机DIY电子钟)
http://www.crystalradio.cn/forum ... 42&fromuid=5908
(出处: 矿石收音机论坛)
下面是应用程序:
tclock.zip
(19.59 KB, 下载次数: 484)
下面这个是首位0自动消隐的APK,昨天晚上写的没感觉不顺眼,今天早上看那个0就有点碍眼了:
tclock.zip
(19.58 KB, 下载次数: 565)
其实也不是为了做电子钟用,而是为了写android程序练手的,当然还是有用的,因为现在ANDROID系统带的所有时钟都没有秒显示,有时需要看着计算点时间不方便,就写了这个程序。
下面是源代码,相应的资源文件也非常简单,很好写,或者可以用APK中提取,就不另上传了。
这个程序主要是用了时间格式转换,和定时更新显示内容。特点在于特别针对毫秒尾数为0做了对齐,以便显示的秒数更精确些。
- package elezen.tclock;
- import java.text.SimpleDateFormat;
- import java.util.Calendar;
- import java.util.Locale;
- import java.util.TimeZone;
- import android.app.Activity;
- import android.os.Bundle;
- import android.os.Handler;
- import android.view.WindowManager;
- import android.widget.TextView;
- public class MainActivity extends Activity {
- private String mClockFormatString;
- private SimpleDateFormat mClockFormat;
- private Calendar mCalendar;
- Handler handler=new Handler();
- public TextView tv=null;
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_main);
- mCalendar = Calendar.getInstance(TimeZone.getDefault());
- tv=(TextView)findViewById(R.id.t1);
- getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
- }
- @Override
- protected void onResume(){
- super.onResume();
- handler.post(runnable);
- }
- @Override
- protected void onPause(){
- super.onPause();
- handler.removeCallbacks(runnable);
- }
- Runnable runnable=new Runnable() {
- @Override
- public void run() {
- // TODO Auto-generated method stub
- long t=System.currentTimeMillis();
- mCalendar.setTimeInMillis(t);
- tv.setText(getSmallTime());
- handler.postDelayed(this, 1000-t%1000);
- }
- };
- private final CharSequence getSmallTime() {
- SimpleDateFormat sdf;
- String format = "HH:mm:ss";
- if (!format.equals(mClockFormatString)) {
- mClockFormat = sdf = new SimpleDateFormat(format,Locale.getDefault());
- mClockFormatString = format;
- } else {
- sdf = mClockFormat;
- }
- String result = sdf.format(mCalendar.getTime());// : DateFormat.format(format, mCalendar.getTime()).toString();
- return result;
- }
- }
复制代码 嗯,是ANDROID的。IPHONE到是有个闲置的,IPHONE5S,可是没有办法在那上自己来写程序,就是学会了写,也传不到手机上用,因为传手机上用需要通过APPLE STORE,麻烦着呢,人家不通过咱也没办法弄。ANDROID有好处,可以自己弄着玩。 |
评分
-
2
查看全部评分
-
|