从不断变化的变量中获取最大值

Getting Max Value from a changing variable

我正在开发一款实时从 Arduino 获取值的应用程序。 获取机器不停的角度。

我需要我的应用程序从它从 Arduino 收到的所有值中获取最大值,并在第一次移动后达到 0 度时启动另一个函数。

或者,如果可以的话,我该如何在该值达到特定值时调用函数?

例如,在图像上,如何让应用程序在指针到达绿色范围时调用另一个函数。

谢谢

我试过类似的方法但没有用。

if (x>y){
            y=x;
        }

test5.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                x=x+5;
                Log.d("valuey", Integer.toString(y));
                Log.d("valuex", Integer.toString(x));
            }
        });

我打算试试这样的东西

 Thread t = new Thread() {
            @Override
            public void run() {
                try {
                    while (!isInterrupted()) {
                        Thread.sleep(100);
                        runOnUiThread(new Runnable() {
                            @Override
                            public void run() {
                                if (x>y){
                                    y=x;
                                }
                                test5.setOnClickListener(new View.OnClickListener() {
                                    @Override
                                    public void onClick(View v) {
                                        x=x+5;
                                        Log.d("valor2", Integer.toString(y));
                                        Log.d("valor3", Integer.toString(x));
                                    }
                                });

                            }
                        });
                    }
                } catch (InterruptedException e) {
                }
            }
        };
        t.start();

我找到了另一种在这种情况下更有意义的方法。

设置调用相同函数的 Speed ChangeListener。

speedView.setOnSpeedChangeListener(new OnSpeedChangeListener() {
            @Override
            public void onSpeedChange(Gauge gauge, boolean isSpeedUp, boolean isByTremble) {
                if ((i>=-1 && i < 2) || i==4 || i==7) {

                    calculo();
                    avaliacao();

                }
            }
    });