【问题标题】:Android chronometer whick can tick backwards troubleAndroid chronometer whick 会倒退麻烦
【发布时间】:2011-10-07 14:30:48
【问题描述】:

我想要的是一个可以追溯的 Chronometer UI 组件。在标准 Chronometer 中,UI chronometer 数据上显示的所有需要​​的方法都是私有的或最终的,因此无法更改其行为。 实现自己的计时器我只能想象使用 Timer 并根据状态扩展 View 并在画布上绘制计时器数据。但在这种情况下,我无法修改视图,因为所有调用都来自另一个线程,因为计时器在另一个线程中调用其计划任务。所以我得到了CallFromWrongThreadException。 我看了一下标准 Chronometer 是如何实现的。在那里我找到了

@android.view.RemotableViewMethod
    public void setBase(long base) {
        mBase = base;
        dispatchChronometerTick();
        updateText(SystemClock.elapsedRealtime());
    }

无法进入@android.view.RemotableViewMethod注解里面。这里有什么魔力? Chronometer 如何根据时间变化更新视图?有没有我可以监听的事件,比如 SystemTimeChange..?

【问题讨论】:

    标签: android android-widget


    【解决方案1】:

    尝试使用 runOnUIThread 或 handler.post

    【讨论】:

      【解决方案2】:

      实现了自己的计时器扩展 TextView,具有一个计时器任务和处理程序,它们从计时器任务线程获取消息。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2022-12-18
        • 1970-01-01
        • 2011-04-24
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多