java - android - 显示变量更改

标签 java android android-activity

好吧 - 我知道必须有一个简单的解决方案,但我一生都无法弄清楚。

编写一个非常基本的 Android Activity 来简单地迭代 0-99。我有一个 TextView ,我想显示计数。所发生的情况是,它只是保持空白直到结束,然后显示结束计数 (99)。

不确定 TextView 是否是正确的显示方式或答案是什么。任何帮助是极大的赞赏。提前致谢

最佳答案

尝试在 onCreate 中使用这样的代码(其中 number 定义为字段):

textView.post(new Runnable() {
    @Override
    public void run() {
        number++;
        textView.setText("counting: " + number);
        if (number < 100) {
            textView.postDelayed(this, 50);
        }
    }
});

编辑:代码已编辑,因为 View 类具有 post 和 postDelayed,这会将调用传播到它们内部的 Handler 实例。

您需要阅读一些有关 Handler class 的内容.

警告:此代码泄漏 Activity 大约 5 秒,不应直接在生产代码中使用。您需要在适当的时间从消息队列中删除Runnable(也许在onDestroy中,但这取决于您的需求)。

View.removeCallbacks用于防内存泄漏。

关于java - android - 显示变量更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15838596/

相关文章:

java - JNI 层中无符号字符数组的内存泄漏

java - 单击自动完成文本查看建议的项目

android - 使用 Webview 的 Paypal

java - Android:在 fragment 上创建按钮时出现 classcastException

android - 在 Android 中恢复 Activity

android - 如何使用菜单项中的 switch case 启动不同的 Activity ?

java - 将 ArrayList 从 SecondActivity 传递到 MainActivity Android

java - 如何使用 clone() 方法克隆 Java 对象

java - 使用 JMH 测试 Spring MVC 吞吐量

android - 将 android 库发布到亚马逊云程序