倒数计时器,完成,在 Android Studio 中暂停 [英] Countdown timer , finish ,pause in Android Studio

查看:143
本文介绍了倒数计时器,完成,在 Android Studio 中暂停的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有倒数计时器,我的项目上有编辑文本.倒数计时器与 edittext 变量一起使用.它可以工作.我添加了一个新按钮来完成 counttowntimer.我想在单击按钮时完成倒数计时器.我想在点击时在 bitir 中完成倒数计时器.

I have got countdown timer, edittext on my project. Countdown timer work with edittext varibles. It can work. I add a new button for finish coundtowntimer. I want finish countdown timer in when ı click button. I want finish countdown timer in bitir on click.

Activity.java

public class pomodoro extends AppCompatActivity {
    Button baslat,backhome,restore,bitir;
    EditText edittextcalisma,edittextmola;
    CountDownTimer calisma,mola;
    CircularView circularViewWithTimercalisma,circularViewWithTimermola;
    private Notification notification;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_pomodoro);
        bitir=findViewById(R.id.bitirbutton);
        circularViewWithTimercalisma = findViewById(R.id.circular_viewcalisma);
        circularViewWithTimermola = findViewById(R.id.circular_viewmola);
      baslat = findViewById(R.id.baslatbutton);
        edittextcalisma = findViewById(R.id.edittextcalisma);
        edittextmola = findViewById(R.id.edittextmola);
        textcalisma = findViewById(R.id.textcalisma);
        textmola = findViewById(R.id.textmola);
        tur = findViewById(R.id.tur);
        pomodoro = findViewById(R.id.pomodoro);
        backhome = findViewById(R.id.backhome);
          baslat.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                closeKeyboard();

                final int molapo = Integer.valueOf(edittextmola.getText().toString());
                final int calismapo = Integer.valueOf(edittextcalisma.getText().toString());
                if (calismapo <= 600 && molapo <= 600 && calismapo > 0 && molapo>0){
                 bitir.setOnClickListener(new View.OnClickListener() {
                        @Override
                        public void onClick(View view) {
                            **//I want finish countdown timer in there**
                        }
                    });
                    restore.setVisibility(View.INVISIBLE);
  
                        final CountDownTimer calisma = new CountDownTimer(calismapo * 60000, 1000) {
                        @Override
                        public void onTick(long millis) {
                            circularViewWithTimercalisma.setVisibility(View.VISIBLE);
                            circularViewWithTimercalisma.startTimer();
                            CircularView.OptionsBuilder builderWithTimer =
                                    new CircularView.OptionsBuilder()
                                            .shouldDisplayText(false)
                                            .setCounterInSeconds(calismapo*60)
                                            .setCircularViewCallback(new CircularViewCallback() {
                                                @Override
                                                public void onTimerFinish() {
                                                }

                                                @Override
                                                public void onTimerCancelled() {
                                                }
                                            });

                            circularViewWithTimercalisma.setOptions(builderWithTimer);
                            tur.setText("Çalışma");
                            if (calismapo > 60){
                                circularViewWithTimercalisma.setOptions(builderWithTimer);
                                tur.setText("Çalışma");
                                int hours = (int) (millis /1000) /3600;
                                int minuted1 = (int) ((millis / 1000)% 3600) / 60;
                                int secondd1 = (int) (millis / 1000) % 60;
                                pomodoro.setText(hours + ":" + minuted1 + ":" + secondd1);
                                if (secondd1 < 10) {
                                    pomodoro.setText(hours + ":" + minuted1 + ":0" + secondd1);
                                }
                                if (minuted1 < 10){
                                    pomodoro.setText(hours + ":0" + minuted1 + ":" + secondd1);
                                    if (secondd1 < 10) {
                                        pomodoro.setText(hours + ":" + minuted1 + ":0" + secondd1);
                                    }
                                }
                            }else{
                                int minuted1 = (int) (millis / 1000) / 60;
                                int secondd1 = (int) (millis / 1000) % 60;
                                pomodoro.setText(minuted1 + ":" + secondd1);
                                if (secondd1 < 10) {
                                    pomodoro.setText(minuted1 + ":0" + secondd1);
                                }
                            }

                        }
                        @Override
                        public void onFinish() {
                            circularViewWithTimercalisma.stopTimer();
                            final int molapo = Integer.valueOf(edittextmola.getText().toString());
                            circularViewWithTimermola.setVisibility(View.VISIBLE);
                            circularViewWithTimercalisma.setVisibility(View.INVISIBLE);

                            CountDownTimer mola = new CountDownTimer(molapo * 60000, 1000) {
                                @Override
                                public void onTick(long millis) {

                                    circularViewWithTimermola.startTimer();
                                    CircularView.OptionsBuilder builderWithTimer =
                                            new CircularView.OptionsBuilder()
                                                    .shouldDisplayText(false)
                                                    .setCounterInSeconds(molapo*60)
                                                    .setCircularViewCallback(new CircularViewCallback() {
                                                        @Override
                                                        public void onTimerFinish() {
                                                        }

                                                        @Override
                                                        public void onTimerCancelled() {
                                                        }
                                                    });

                                    circularViewWithTimermola.setOptions(builderWithTimer);
                                    tur.setText("Mola");
                                    if (molapo > 60){
                                        circularViewWithTimercalisma.setOptions(builderWithTimer);
                                        tur.setText("Mola");
                                        int hours = (int) (millis /1000) /3600;
                                        int minuted1 = (int) ((millis / 1000)% 3600) / 60;
                                        int secondd1 = (int) (millis / 1000) % 60;
                                        pomodoro.setText(hours + ":" + minuted1 + ":" + secondd1);
                                        if (secondd1 < 10) {
                                            pomodoro.setText(hours + ":" +minuted1 + ":0" + secondd1);
                                        }    if (minuted1 < 10){
                                            pomodoro.setText(hours + ":0" + minuted1 + ":" + secondd1);
                                            if (secondd1 < 10) {
                                                pomodoro.setText(hours + ":" + minuted1 + ":0" + secondd1);
                                            }
                                        }
                                    }else{
                                        int minuted1 = (int) (millis / 1000) / 60;
                                        int secondd1 = (int) (millis / 1000) % 60;
                                        pomodoro.setText(minuted1 + ":" + secondd1);
                                        if (secondd1 < 10) {
                                            pomodoro.setText(minuted1 + ":0" + secondd1);
                                        }
                                    }


                                }
                                @Override
                                public void onFinish() {
                                    pomodoro.setText("Bitti");
                                 circularViewWithTimermola.setVisibility(View.INVISIBLE);
                                    tur.setVisibility(View.INVISIBLE);
                                    CountDownTimer bekle = new CountDownTimer(5000, 1000) {
                                        @Override
                                        public void onTick(long millis) {


                                        }
                                        @Override
                                        public void onFinish() {
                                           

                                        }
                                    }.start();

                                }
                            }.start();


                        }
                    }.start();

                }


            }
        });
    }

    }

推荐答案

在按钮点击中调用倒计时对象(calisma、mola)如

Call the countdown timer object (calisma, mola) in button click such as

`mola.onFinish();`

    calisma.onFinish();

这篇关于倒数计时器,完成,在 Android Studio 中暂停的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆