android监听方法的耗时时间,Android Studio监听时间变化
如果你要在你的app中顯示時間,你需要知道什么時候時間發生了變化,相應地更新app上的顯示。
Android系統已經自帶了廣播時間變化的功能,我們只需要動態注冊一個廣播接收器,來處理接收到的廣播就好了。
代碼如下:
package com.aiden.timechange;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.widget.Toast;
public class MainActivity extends AppCompatActivity {
private IntentFilter intentFilter;
private TimeChangeReceiver timeChangeReceiver;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
intentFilter = new IntentFilter();
intentFilter.addAction(Intent.ACTION_TIME_TICK);//每分鐘變化
intentFilter.addAction(Intent.ACTION_TIMEZONE_CHANGED);//設置了系統時區
intentFilter.addAction(Intent.ACTION_TIME_CHANGED);//設置了系統時間
timeChangeReceiver = new TimeChangeReceiver();
registerReceiver(timeChangeReceiver, intentFilter);
}
public void onDestroy() {
super.onDestroy();
unregisterReceiver(timeChangeReceiver);
}
class TimeChangeReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
switch (intent.getAction()) {
case Intent.ACTION_TIME_TICK:
//每過一分鐘 觸發
Toast.makeText(context, "1 min passed", Toast.LENGTH_SHORT).show();
break;
case Intent.ACTION_TIME_CHANGED:
//設置了系統時間
Toast.makeText(context, "system time changed", Toast.LENGTH_SHORT).show();
break;
case Intent.ACTION_TIMEZONE_CHANGED:
//設置了系統時區的action
Toast.makeText(context, "system time zone changed", Toast.LENGTH_SHORT).show();
break;
}
}
}
}
無需在AndroidManifest.xml中做任何改動。
測試通過。
總結
以上是生活随笔為你收集整理的android监听方法的耗时时间,Android Studio监听时间变化的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: c语言cobegin用法,用C语言实现P
- 下一篇: android进程间对象传递,Andro