編輯:關於Android編程
在項目開發中,經常需要通過延時加載來實現滿足我們的項目要求。那到底怎樣來實現延時,下面結合java與android的相關方法來實現延時問題。
一.利用線程的Sleep方法
new Thread(new Runnable(){
@Override
public void run() {
// TODO Auto-generated method stub
try {
Thread.sleep(1000);
myHandler.sendEmptyMessage(what);//處理主線程方法
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}); // 1.實例化Timer
Timer timer = new Timer();
// 2.實例化TimerTask
TimerTask timerTask = new TimerTask() {
@Override
public void run() {
// TODO Auto-generated method stub
}
};
// 3.啟動定時器
/**
* task: the task to schedule.
* delay: amount of time in milliseconds before first execution.
* period: amount of time in milliseconds between subsequent executions
*/
timer.schedule(timerTask, delay, period);
// 4.關閉定時器
if (timerTask != null) {
timerTask.cancel();
timerTask = null;
}
// 5.重新開啟定時器,需要重新實例化
timerTask = new TimerTask() {
@Override
public void run() {
// TODO Auto-generated method stub
}
};
timer.schedule(timerTask, delay, period);3.利用android自帶的Handler消息處理
/**
* delayMillis:The delay (in milliseconds) until the Runnable will be executed.
*/
new Handler().postDelayed(new Runnable(){
@Override
public void run() {
// TODO Auto-generated method stub
}
}, delayMillis);4.SchduleExecutorService接口處理延時 迭代
/**
* ScheduledExecutorService提供了按時間安排執行任務的功能,它提供的方法主要有:
* schedule(task,initDelay):安排所提交的Callable或Runnable任務在initDelay指定的時間後執行。
* scheduleAtFixedRate():安排所提交的Runnable任務按指定的間隔重復執行
* scheduleWithFixedDelay():安排所提交的Runnable任務在每次執行完後,等待delay所指定的時間後重復執行。
*
* initialDelay: the time to delay first execution
* period: the period between successive executions
* unit: the time unit of the initialDelay and period parameters
*/
//1.實例化
ScheduledExecutorService schedule = Executors.newScheduledThreadPool(2);
//2.開啟定時 循環迭代處理
schedule.scheduleAtFixedRate(new Runnable(){
@Override
public void run() {
// TODO Auto-generated method stub
}
}, initialDelay, period, unit);
//3.關閉
if(schedule != null){
schedule.shutdown();
schedule = null;
}
魅族pro5手機怎麼截屏截圖教程
魅族pro5怎麼截屏?很多初次使用魅族pro5的用戶,還不知道該如何截圖,魅族pro5是有多鐘截屏方法,快捷組合鍵截圖。也可以借用第三方軟件進行截圖:借助第
Android的下拉刷新/上拉加載控件
事實上之所以會有之前的那篇博文的出現,是起因於前段時間自己在寫一個練手的App時很快就遇到這種需求。其實我們可以發現類似這樣下拉刷新、上拉加載的功能正在變得越來越普遍,可
Android Studio 2.2新特性:新布局、Firebase、OpenJDK以及Java 8
前幾天,收到了Android Studio 2.2的更新推送,於是迫不及待的更新了一下。不負眾望Android Studio 2.2帶來了很多新的特性,能讓我眼前一亮。A
Android動態加載Dex機制解析
1.什麼是類加載器?類加載器(class loader)是 Java?中的一個很重要的概念。類加載器負責加載 Java 類的字節代碼到 Java 虛擬機中。Java 虛擬