相关疑难解决方法(0)

取消handler.postdelayed进程

我正在使用handler.postDelayed()我的应用程序的下一个阶段之前创建一个等待期.在等待期间,我显示一个带有进度条和取消按钮的对话框.

我的问题是我找不到在时间流逝之前取消postDelayed任务的方法.

android postdelayed android-handler

247
推荐指数
3
解决办法
9万
查看次数

Android:如何停止Runnable?

我试过这种方式:

private Runnable changeColor = new Runnable() {
   private boolean killMe=false;
   public void run() {
       //some work
       if(!killMe) color_changer.postDelayed(changeColor, 150);
   }
   public void kill(){
       killMe=true;
   }
};
Run Code Online (Sandbox Code Playgroud)

但我无法访问kill()方法!

android runnable

33
推荐指数
3
解决办法
8万
查看次数

如何从处理程序中删除未分配给变量的Runnable

我启动了一个runnnable但没有将它分配给变量.我怎么阻止它?我知道它是removeCallbacksAndMessages()方法的组合,但由于我创建了一个匿名的runnable,我不知道传入此方法的参数:

mStartButton.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            h = new Handler();
            final int delay = 1000; //milliseconds

            h.postDelayed(new Runnable() {
                public void run() {
                    mUpdateRef.addListenerForSingleValueEvent(new ValueEventListener() {
                        @Override
                        public void onDataChange(DataSnapshot dataSnapshot) {
                            int mNumberOfPollsForCurrentDay = (int) dataSnapshot.getChildrenCount();
                            Random r = new Random();
                            int randomPollInRangeOfCurrentDayNumberOfPolls = r.nextInt((mNumberOfPollsForCurrentDay + 1) - 1) + 1;
                            int numberOfPollAnswersAtRandomNumber = (int) dataSnapshot.child(String.valueOf(randomPollInRangeOfCurrentDayNumberOfPolls)).child(POLL_ANSWERS_LABEL).getChildrenCount();
                            Random rr = new Random();
                            int randomAnswerBasedFromRandomPollAnswerChoices = rr.nextInt((numberOfPollAnswersAtRandomNumber + 1) - 1) + 1;
                            mUpdateRef.child(String.valueOf(randomPollInRangeOfCurrentDayNumberOfPolls)).child(POLL_ANSWERS_LABEL).child(String.valueOf(randomAnswerBasedFromRandomPollAnswerChoices)).child("Vote_Count").runTransaction(new Transaction.Handler() {
                                @Override …
Run Code Online (Sandbox Code Playgroud)

java android handler runnable

2
推荐指数
1
解决办法
113
查看次数

标签 统计

android ×3

runnable ×2

android-handler ×1

handler ×1

java ×1

postdelayed ×1