Android - 一次更新带有值的TextView [10个值]

问题描述 投票:0回答:1

非常感谢您的帮助,唯一的问题是我将延迟更改为10000,因为我必须显示每个问题10秒,但是当我启动它时,第一个问题的显示也会延迟10秒,我不希望这样发生在第一个问题上..我需要你的帮助

'handler.postDelayed(new Runnable(){
        public void run(){
            int firstinteger = random.nextInt(100);
            int secondinteger = random.nextInt(100);
             int operator = rand.nextInt(4);
             String operand = "";
            //do something
            count++;
            switch (operator) {
                // cases = operator;

                case 0:

                    bothIntegers = firstinteger + secondinteger;
                    operand = "+";
                    break;

                case 1:
                    bothIntegers = firstinteger - secondinteger;
                    operand = "-";
                    break;

                case 2:
                    bothIntegers = firstinteger * secondinteger;
                    operand = "*";
                    break;

                case 3:
                    bothIntegers = firstinteger / secondinteger;
                    operand = "/";

                    break;
            }
            String result = firstinteger + "" + operand + "" + secondinteger + " = ";
            textView.setText(result.toString());
            handler.postDelayed(this, delay);
            if(count == 10){
                handler.removeCallbacksAndMessages(null);
            }
        }
    }, delay);'
java android android-studio
1个回答
0
投票

int count = 0; //全局变量

final Handler handler = new Handler();
        final int delay = 5000; //milliseconds


        handler.postDelayed(new Runnable(){
            public void run(){
                //do something
                Log.e("XXX", String.valueOf(count));
                count = count + 1;
                if (count != 10) {
                    handler.postDelayed(this, delay);
                }
            }
        }, 0);

希望能帮到你。

© www.soinside.com 2019 - 2024. All rights reserved.