Java 如何在Android中以字符串格式自动刷新当前时间

Java 如何在Android中以字符串格式自动刷新当前时间,java,android,Java,Android,现在我已经生成了一个显示当前时间的字符串。我想知道如何自动刷新该字符串格式,以便可以对其进行更新。提前谢谢 SimpleDateFormat simpleDateFormat = new SimpleDateFormat("dd-MM-yyyy hh:mm:ss"); String format = simpleDateFormat.format(new Date()); Handler mHandler=新的InnerHandler(此); 私有最终静态整数更新\当前\时间=100;

现在我已经生成了一个显示当前时间的字符串。我想知道如何自动刷新该字符串
格式
,以便可以对其进行更新。提前谢谢

SimpleDateFormat simpleDateFormat = new SimpleDateFormat("dd-MM-yyyy hh:mm:ss");
    String format = simpleDateFormat.format(new Date());
Handler mHandler=新的InnerHandler(此);
私有最终静态整数更新\当前\时间=100;
文本视图时间;
@凌驾
受保护的void onStart(){
super.onStart();
新线程(newrunnable()){
@凌驾
公开募捐{
如果(正在运行){
mHandler.sendEmptyMessage(更新当前时间);
试一试{
睡眠(1000);
}捕捉(中断异常e){
e、 printStackTrace();
}
}
}
}).start();
}
私有静态类InnerHandler扩展了Handler{
私人最终WeakReference weakObj;
InnerHandler(eActivity obj){
this.weakObj=新的电子活动(obj);
}
@凌驾
公共无效handleMessage(消息消息消息){
超级handleMessage(msg);
final EgActivity obj=this.weakObj.get();
如果(obj!=null
&&!obj.isFinishing()){
开关(msg.what){
案例更新\当前\时间:
SimpleDataFormat SimpleDataFormat=新的SimpleDataFormat(“dd-MM-yyy-hh:MM:ss”);
字符串格式=SimpleDataFormat.format(新日期());
obj.tvTime.setText(格式);
打破
}
}
}
}

什么是“刷新字符串格式”?是否更改呈现给用户的文本格式?或者用另一个日期时间值更新内容?这两个问题已经在Stack Exchange中讨论过很多次了。你在发帖前搜索过吗?
Handler mHandler = new InnerHandler(this);
private final static int UPDATE_CURRENT_TIME = 100;
TextView tvTime;
    @Override
        protected void onStart() {
            super.onStart();
            new Thread(new Runnable() {
                @Override
                public void run() {
                    if(isRunning){
                        mHandler.sendEmptyMessage(UPDATE_CURRENT_TIME);
                        try {
                            Thread.sleep(1000);
                        } catch (InterruptedException e) {
                            e.printStackTrace();
                        }
                    }
                }
            }).start();
        }


        private static class InnerHandler extends Handler {
            private final WeakReference<EgActivity> weakObj;

            InnerHandler(EgActivity obj) {
                this.weakObj = new EgActivity<>(obj);
            }

            @Override
            public void handleMessage(Message msg) {
                super.handleMessage(msg);
                final EgActivity obj = this.weakObj.get();
                if (obj != null
                        && !obj.isFinishing()) {
                    switch (msg.what) {
                        case UPDATE_CURRENT_TIME:
                            SimpleDateFormat simpleDateFormat = new SimpleDateFormat("dd-MM-yyyy hh:mm:ss");
                            String format = simpleDateFormat.format(new Date());
                            obj.tvTime.setText(format);
                            break;
                    }

                }
            }
        }