Articles of 计时器

Android上的延迟事件

我正在编写一个Android应用程序,安排某些方法以不规则的时间间隔触发。 据我所知,至less有两种方法可以做到这一点: 使用Handler.postDelayed在给定时间后执行Runnable 。 在给定的时间之后,使用Timer来计划和执行TimerTask 。 我正在寻找一个解决scheme,可以处理多个事件快速连发。 哪个是最好的方法? 有没有更好的我失踪?

计时器不会停止在Android中

我在android中做了一个应用程序,并使用这个定时器 try { CountDownTimer start1 = new CountDownTimer(20000, 1000) { public void onTick(long millisUntilFinished) { TextView timeShow = (TextView)findViewById(R.id.showTime); timeShow.setText(" "+" 00:" +millisUntilFinished / 1000); } 但我的问题是我不知道如何停止计时器。 任何想法? 我已经尝试过了: quitApplication.setOnClickListener(new OnClickListener() { public void onClick(View v) { start1.cancel(); Intent i = new Intent(v.getContext(), startGame.class); startActivity(i); // TODO Auto-generated method stub } });

Android / phonegap – 点击响应时间慢

我正在接近解决schemeghostCoder暗示检测触摸事件,而不是点击事件的想法。 这下面的代码是我目前有,但是有些东西还是不太正确的。 它在我的主页(非常基本的页面)上运行,但是实际的游戏页面却被打破了: 这是我的代码:JAVASCRIPT: var b=document.getElementById('STOP'),start=0; //Check for touchstart if('ontouchstart' in document.documentElement) { document.getElementById("notouchstart").style.display = "none"; } //Add a listener that fires at the beginning of each interaction [b].forEach(function(el){el.addEventListener('touchstart',interact);}); //Add the event handlers for each button b.addEventListener('touchstart',highlight); //Functions Store the time when the user initiated an action function interact(e) { start = new Date(); } […]

Resched。 定时器取消后给“java.lang.IllegalStateException:定时器取消。”

我想知道我是否可以在取消它之后再次安排定时器。 这是在这里陈述, http://www.coderanch.com/t/452066/java/java/Exception-timer-IllegalStateException ,一旦你取消了计时器,将不可能安排在同一个计时器的任何东西,除非我创build一个新的计时器。 而且,我遇到了下面的错误, java.lang.IllegalStateException:定时器被取消。 我正试图出来一个计时器,将定期执行无线扫描。 但是我希望“暂停”,如果不是,扫描完成后,取消定时器。 只有在完成计算并返回一些结果后,我才能恢复计时器。 任何人都可以告诉我如何解决这个问题? 忘记提到,我会启动计时器后,我完成加载图像,我用AsyncTask来做到这一点。 我试图实现这一个单独的线程,以便它不会阻止UI线程。 下面是程序的粗略框架和启动计时器,当时间只有在图像完全加载后(在“ load.execute(context); ”之后)才会执行wifi扫描: public class LargeImageScroller extends Activity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(new SampleView(this)); } @Override public boolean onCreateOptionsMenu(Menu menu) {…} @Override public boolean onOptionsItemSelected(MenuItem item) {…} //this is the class where the program would do all the UI […]

在Android 5秒后执行function

我是新的android开发,现在我的启动器活动只显示5秒,之后,我想检查用户login或不运行,并执行操作。 这是我的代码。 @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); exactPreferences = getSharedPreferences("ExactPreference",MODE_PRIVATE); setContentView(R.layout.activity_landing_page); session = exactPreferences.getString(Model.getSingleton().SHARED_SESSION_ID,null); Log.i("Session Id",session); displayData(); // I want to perform this function after 5 seconds. } private void displayData() { if(session.equals("")){ Intent loginIntent = new Intent(LandingPage.this, LoginActivity.class); startActivity(loginIntent); Log.i("User Logged In", "False"); } else { Intent objIntent = new Intent(LandingPage.this, IndexPageActivity.class); […]

android倒数计时器的小时/分钟select器

我试图实现类似倒数计时器,在0播放闹钟。我希望能够设置在计时器closures之前等待的时间量,我想知道是否有一个UI小部件或元素提供这种selectfunction。 基本上,Android有没有像iPhone的select旋钮? 还是有一些types的时间select器,允许select任意数量的小时和分钟? android中的timepicker部件有一个不必要的AM / PM标签。 我是否需要实现我自己的自定义用户界面来实现这一目标?

CountDownTimer.cancel()在Android中不起作用

CountDownTimer.cancel()不能在下面的代码中工作: myTimer = new CountDownTimer(10000, 1000) { public void onFinish() { } @Override public void onTick(long millisUntilFinished) { if(null != myObject){ myTimer.cancel(); } } }.start(); 在上面的代码中,我启动了一个CountDownTimer ,它检查对象是否为null并相应地取消定时器。 该对象在任何时间点由某个听众设置。 请参考和build议。 我在这里做正确的事吗? 解决schemeGautier Hayoun : 只是做了一个替代CountDownTimer,你可以取消onTick: Github链接 – Gautier Hayoun 12年10月12日在1:04

如何在一段时间后开始活动?

我需要在一段时间后从当前的活动开始一个活动。 我编码如下。 public class FirstActivity extends Activity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_first); new Timer().schedule(new TimerTask(){ public void run() { startActivity(new Intent(FirstActivity.this, SecondActivity.class)); } }, 2000); } 但它不工作..它不断崩溃..我的方法是否正确? 我的清单文件如下 ` <uses-sdk android:minSdkVersion="8" android:targetSdkVersion="15" /> <application android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:theme="@style/AppTheme" > <activity android:name=".FirstActivity" android:label="@string/title_activity_first" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> […]

定时器()作为守护进程与非守护进程

//Creates a new Timer which may be specified to be run as a daemon thread. Timer(boolean isDaemon) //Creates a new non-daemon Timer. Timer() 什么时候一个计时器应该作为守护程序在Android应用程序内启动? 文档没有提到这一点。 http://developer.android.com/reference/java/util/Timer.html

onPause / onResume活动问题

我有一个小的testing应用程序,我正在其中有一个计时器,更新textview从100倒数到0.这工作正常,但现在我试图暂停应用程序,如果用户在手机上按下后退button,然后当他们重新打开应用程序时,从停止的地方重新启动计时器。 这是我正在使用的代码: @Override public void onPause() { if(this._timer_time_remaining > 0) { this.timer.cancel(); } super.onPause(); Log.v("Pausing", String.format("Pausing with %d", this._timer_time_remaining)); } @Override public void onResume() { Log.v("Resuming", String.format("Resuming with %d", this._timer_time_remaining)); if(this._timer_time_remaining > 0) { start_timer(this._timer_time_remaining); } super.onResume(); } start_timer()方法创build一个CountDownTimer,它更新onTick方法中的textview并更新this._timer_time_remaining intvariables。 CountDownTimer和_timer_time_remaining在类级别都是这样声明的: private CountDownTimer timer; private int _timer_time_remaining; 从Log.v()打印中,我发现_timer_time_remainingvariables在调用onPause时存储了正确的秒数,但是当onResume开始时它被设置回0。 为什么variables被重置? 我认为应用程序将继续在相同的值在后台运行。 我错过了什么吗? 这是在扩展Activity的类中声明的。 提前致谢! 注:编辑清理代码复制