由于我没有看到任何关于在不使用任何按钮的情况下取消警报或在onClick中调用的线程。我决定问这个问题,我也想提出这个问题,(因为它有点相互关联),关于在不同的触发时间内同时分配或调用警报,因为我已经读过如果你设置了另一个警报,它将停止上一次警报。但我不想要那个,我用不同的触发时间分配警报。 关于我的主要问题,如何停止/取消自动说,在一段时间内,即5分钟,或者如果它已经重复3次,那么它将自动停止报警。
答案 0 :(得分:1)
由于没有人完全理解我的观点,我做了一些快速调整,发现我的逻辑完全不对,抱歉。我所做的是实现一个贪睡和解散功能,并且对于同时触发具有不同触发时间的警报,我只需要为requestCode
制定不同的setRepeating()
,同样适用于set()
&lt ; - 如果打算使用此方法,requestCode将用于取消发出的正确警报,以及用于触发警报的意图的相同签名。
答案 1 :(得分:0)
你有正确的想法,我认为这是通过使用一个线程来完成的。然而,根据我的经验,我会做一个快速的工作(直到有人给出更好的答案)。也许你可以解决它。
我有一个天文台(如果你不想让用户看到它,有一种隐藏它的方法)
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);
}
}
对于重复闹钟,我会创建一个循环,然后你可以查看我扔在那里的计数器,看看过程重复了多少次。