0

因为我没有看到任何关于在不使用任何按钮或调用 onClick 的情况下取消警报的线程。我决定问这个问题,并且我还想包括这个问题,(因为它们之间有些相关),关于同时分配或调用具有不同触发时间的警报,因为我已经读过,如果你设置另一个警报,它只会停止之前的警报。但我不希望这样,我正在分配具有不同触发时间的警报。至于我的主要问题,我如何自动停止/取消说,在一段时间内,即 5 分钟,或者如果它已经重复了 3 次,那么它会自动停止警报。

4

2 回答 2

1

由于没有人完全明白我的意思,我做了一些快速的调整,发现我的逻辑很不对劲,抱歉。我所做的是实现一个贪睡和关闭功能,至于同时触发具有不同触发时间的警报,我只需要制定一个不同requestCode的 forsetRepeating()并且同样适用于set()<-- 如果打算使用此方法,则 requestCode 将用于取消触发的正确警报以及您用来触发警报的意图的相同签名。

于 2012-09-20T15:10:00.130 回答
0

你有正确的想法,在我看来,这应该是通过使用线程来完成的。但是,根据我的经验,我确实可以快速解决(直到有人给出更好的答案)。也许你可以解决它。

我有一个 Chronometer(如果你不想让用户看到它,有一种方法可以隐藏它)

    Chrono = (Chronometer) findViewById(R.id.chronometer1);  //Defines chronometer in layout
            Chrono.start();                                  //Starts Chronometer
            while (!(Chrono.equals(chronoText))) {           /*starts a timer, until it reaches the desired time */
                chronoText = Chrono.getText().toString();    //gets chronometer time and displays it as a string
                if (chronoText.equals("05:00")) {  /*compares if the string is the same as your set time( i put in 5min as an example)*/
                     counter++;  //I explain the counter a outside the block   
                                 //right here is where you will call your method that stops alarm.
                    startActivity(intent);
                }

            }

对于重复警报,我会创建一个循环,然后你可以查看我扔在那里的计数器,看看这个过程重复了多少次。

于 2012-09-19T15:10:57.797 回答