Android Studioで簡単なタイマーコードを実現

1470 ワード

需要:iOSのNSTimerタイマ機能と同様に、スイッチ制御はランダムに数秒で指定機能を実行します.
プラットフォーム:Android
開発環境:Android Studio
コード実装:
一.HandlerオブジェクトとRunnableオブジェクトの作成
    Handler handler = new Handler();
    Runnable runnable = new Runnable() {
        @Override
        public void run() {
            if (mPageOpen){

                if (interstitialAd.isLoaded()){  //  -      
                    interstitialAd.show();
                }else {
                    AdRequest adRequest = new AdRequest.Builder().build();
                    interstitialAd.loadAd(adRequest);
                }
                int random = (int)(Math.random() * 10 +20)*1000; //        
                handler.postDelayed(this, random);
            }
        }
    };

二.スイッチコントロール

        Switch mSwith = (Switch) findViewById(R.id.switchPage);
        mSwith.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
            @Override
            public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
                if (isChecked) {
                    mPageOpen = true;
                } else {
                    mPageOpen = false;
                }

                handler.postDelayed(runnable, 15000); //      
            }
        });

三.タイマーの削除
handler.removeCallbacks(runnable);

附:Android中国开発者QQ群に加入:361871827一绪に技术を讨论することを歓迎します..