導航:首頁 > 編程語言 > android倒計時器代碼

android倒計時器代碼

發布時間:2023-03-17 15:30:28

A. android studio怎麼做倒計時鍾

代碼左側的灰色條上點一下,整行代碼變紅茄如了就是設置上斷點了 點綠三角右備納租邊帶刺的e才是調試模式,綠三角只是運行不仿兆能調試

B. android listview 多個item 倒計時怎麼做好

1. Adapter.getView()
public View getView(int position, View convertView, ViewGroup
parent){...}
這個方法就是用來獲得指定位置要顯示的View。官網解釋如下:
Get a View that displays the data at the specified position in the data
set. You can either create a View manually or inflate it from an XML layout
file.
當要顯示一個View就調用一次這個方法。這個方法是ListView性能好壞的關鍵。方法中有個convertView,這個是Android在為我們而做的緩存機制。
ListView中每個item都是通過getView返回並顯示的,假如item有很多個,那麼重復創建這么多對象來顯示顯然是不合理。因此,Android提供了Recycler,將沒有正在顯示的item放進RecycleBin,然後在顯示新視圖時從RecycleBin中復用這個View。
Recycler的工作原理大致如下:
假設屏幕最多能看到11個item,那麼當第1個item滾出屏幕臘兄,這個item的View進入RecycleBin中,第12個要出現前,通過getView從回收站(RecycleBin)中重用這個View,然後設置數據,而不必重新創建一個View。
我們用Android提供臘蔽的APIDemos來驗證這個過程:
先看關鍵代碼:
public View getView(int position, View convertView, ViewGroup parent)
{
// A ViewHolder keeps references to children views to avoid unneccessary
calls
// to findViewById() on each row.
ViewHolder holder;
// When convertView is not null, we can reuse it directly, there is no
need
// to reinflate it. We only inflate a new View when the convertView
supplied
// by ListView is null.
if (convertView == null)
{
convertView = mInflater.inflate(R.layout.list_item_icon_text, null);
Log.v("tag", "positon "+position+" convertView is null, "+"new:
"+convertView);
// Creates a ViewHolder and store references to the two children views
// we want to bind data to.
holder = new ViewHolder();
holder.text = (TextView) convertView.findViewById(R.id.text);
holder.icon = (ImageView) convertView.findViewById(R.id.icon);
convertView.setTag(holder);
}
else
{
//輪局襲 Get the ViewHolder back to get fast access to the TextView
// and the ImageView.
holder = (ViewHolder) convertView.getTag();
Log.v("tag", "positon "+position+" convertView is not null,
"+convertView);
}
// Bind the data efficiently with the holder.
holder.text.setText(DATA[position]);
holder.icon.setImageBitmap((position & 1) == 1 ? mIcon1 : mIcon2);
return convertView;
}
static class ViewHolder
{
TextView text;
ImageView icon;
}

C. android 用 service 和 CountDownTimer 實現一個倒計時器的功能

在平時我們編程的時候,經常會用到倒計時這個功能,很多人不知道Android已經幫封裝好了一個類,往往做物都自己寫。現在發現了這個類,大家共享一下:

在一個漏胡行TextView不斷顯示剩下的時間,代碼如下:

[java] view plain
private TextView vertifyView;
private CountDownTimer timer = new CountDownTimer(10000, 1000) {

@Override
public void onTick(long millisUntilFinished) {
vertifyView.setText((millisUntilFinished / 1000) + "秒後可重發");
}

@Override
public void onFinish() {
vertifyView.setEnabled(true);
vertifyView.setText("獲取驗證碼");
}
};
調用的時候很簡單:timer.start();
最後返嘩說明一下:CountDownTimer timer = new CountDownTimer(10000, 1000)中,第一個參數表示總時間,第二個參數表示間隔時間。意思就是每隔一秒會回調一次方法onTick,然後10秒之後會回調onFinish方法。

D. android 怎麼在button上添加倒計時

最簡單的兩種纖遲運旦冊方法吧

  1. 開啟一個定毀梁時器 (timer 、 countDownTimer) 然後每隔1s 通過handler 讓button 裡面的文字改變一下 就是倒計時了

  2. 基本跟第一個相同。自定義一個類 繼承button 然後 裡面寫定時器 settext()


E. android中使用chronometer怎樣創建倒計時器問題

在Android中,可以使用計時器來實現對時間的監搏埋測,這個類所實現的功能有開始計時,停止計時,重新計時,設置計時模式,下面列出計時器方法的原基帆螞型:
long getBase();//返回基地的時間,由setBase(long)設置的
String getFormat();//返回當前字元串格式,此格式是通過setFormat()實現的
void setBase(long base);//設置時間,計數定時器指定的值
void setFormat(String format);//設置顯示的內容,計時器將會顯示這個參數所對應的值得,如果字元串的值
//轎悄為null,那麼返回的值為MM:SS格式的
下面就來介紹一個實例:
package com.example.android.apis.view;

// Need the following import to get access to the app resources, since this
// class is in a sub-package.
import com.example.android.apis.R;

import android.app.Activity;
import android.os.Bundle;
import android.os.SystemClock;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.Chronometer;

public class ChronometerDemo extends Activity {
Chronometer mChronometer;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);

setContentView(R.layout.chronometer);

Button button;

mChronometer = (Chronometer) findViewById(R.id.chronometer);

// Watch for button clicks.
button = (Button) findViewById(R.id.start);
button.setOnClickListener(mStartListener);//對應的是開始計時

button = (Button) findViewById(R.id.stop);
button.setOnClickListener(mStopListener); //對應的是停止計時

button = (Button) findViewById(R.id.reset);
button.setOnClickListener(mResetListener);//對應的是重新置數

button = (Button) findViewById(R.id.set_format);
button.setOnClickListener(mSetFormatListener);//對應的是設置時間的顯示格式

button = (Button) findViewById(R.id.clear_format);
button.setOnClickListener(mClearFormatListener);//對應的是使用非格式的計時顯示功能
}

View.OnClickListener mStartListener = new OnClickListener() {
public void onClick(View v) {
mChronometer.start();
}
};

View.OnClickListener mStopListener = new OnClickListener() {
public void onClick(View v) {
mChronometer.stop();
}
};

View.OnClickListener mResetListener = new OnClickListener() {
public void onClick(View v) {
mChronometer.setBase(SystemClock.elapsedRealtime());
}
};

View.OnClickListener mSetFormatListener = new OnClickListener() {
public void onClick(View v) {
mChronometer.setFormat("Formatted time (%s)");
}
};

View.OnClickListener mClearFormatListener = new OnClickListener() {
public void onClick(View v) {
mChronometer.setFormat(null);
}
};
}

F. android開發怎麼能讓倒計時用毫秒來計算,並且一頁可以出現多個倒計時的textview不卡

可以使或塌用handler,也可以通過services發賣豎送廣播,更新UI,這些好事操作都是在線程中進行的,你至少要sleep的數值設置成你所需要的就中團大行,因為它的單位本身就是毫秒級。

G. 怎麼在android懸浮窗口上實現倒計時

public class XuanfuTestActivity extends Activity {
/** Called when the activity is first created. */
int num=10;
String text;
Button button;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);

button=new Button(getApplicationContext());//這里不能寫this 否則沒有效果
WindowManager wmManager=(WindowManager)getApplicationContext(). getSystemService(Context.WINDOW_SERVICE);
WindowManager.LayoutParams params=new WindowManager.LayoutParams();
params.type=WindowManager.LayoutParams.TYPE_PHONE ;
params.type=2002;
params.flags=40;
params.width=50;
params.height=50;
wmManager.addView(button, params);
handler.sendEmptyMessageDelayed(1, 1000);
}
Handler handler=new Handler(){

public void handleMessage(android.os.Message msg) {
if (msg.what==1) {
text=""+num--;
button.setText(text);
}
if (num<=0) {
num=0;
}else {
handler.sendEmptyMessageDelayed(1, 1000);
}
};
};

}

H. android listview 多個item 倒計時怎麼做好

Handler+Timer+TimerTask實現:
Activity中代碼:
public class ShopActivity extends Activity {

private ListView lv;
private ShopAdapter pmAdapter;
private Timer timer = new Timer();
private TimerTask timerTask;

private List<MyData> dataList;

@SuppressLint("HandlerLeak")
private Handler mHandler = new Handler() {
public void handleMessage(android.os.Message msg) {
if (msg.what == 1) {
for (int i = 0; i < mMyMatchList.size(); i++) {
dataList.get(i).setServerDate(Long.valueOf(dataList.get(i).getServerDate())+ 1 + "");//這是伺服器當前時間,以此時間為基數進行倒時計,因為伺服器時間以秒為單位返回,所以我們每隔1秒前前,把當前伺服器時間+1,也可以把結束時間-1
serverTime = Long.valueOf(mMyMatchList.get(i).getServerDate());
pmAdapter.notifyDataSetChanged();
}
}
}
};

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.layout_shop);

dataList=new ArrayList<MyData>();//賀敬接下來要從服務端取到數據,加入dataList中

lv= (ListView) this.findViewById(R.id.shop_lv);
pmAdapter = new ShopAdapter(ShopActivity.this, this);
lv.setAdapter(pmAdapter);
timerTask = new TimerTask() {

@Override
public void run() {
Message message = Message.obtain();
message.what = 1;
mHandler.sendMessage(message);
}
};
timer.schele(timerTask, 1000, 1000);
}

@Override
protected void onResume() {
super.onResume();
}

@Override
protected void onDestroy() {
if (null != timer) {
timer.cancel();
}
super.onDestroy();
}
}

最後在適配器類禪悔慎ShopAdapter中,根據伺服器返回的截止時間和伺服器時間,把數據加上去就可以了:
TextView timeTv=findViewById();

timeTv.setText(getTimeFromInt(結束時間-伺服器時間));

getTimeFromInt這個方法是計算時間差並轉換成所需要格式的:

public String getTimeFromInt(long time) {
if (time <= 0) { return "已結束"; }
long day = time / (1 * 60 * 60 * 24);
long hour = time / (1 * 60 * 60) % 24;
long minute = time / (1 * 60) % 60;
long second = time / (1) % 60;
return "還剩:" + day + "天" + hour + "小時" + minute + "分" + second + "秒";
}

I. 安卓按鍵精靈怎麼設置倒計時30分鍾執行代碼,否則執行別的代碼在線等,謝謝大神

直接延時30分鍾就行。
Delay 30*60*1000
腳本最前面加上這句話,30分鍾後會運行。

J. android 有沒有倒計時天時分秒的工具

舉例說明: A1輸入目標時間 2011-3-31 12:30:00 A2輸入現在時間 =NOW() A3輸入 =A1-A2 A4輸入 =INT(A3)&"天"&TEXT(A3-INT(A3),"h時m分s秒") A4為倒計時

閱讀全文

與android倒計時器代碼相關的資料

熱點內容
港版蘋果用的插排 瀏覽:1000
雕刻機編程去哪裡學 瀏覽:436
編程怎麼與steam教育融合 瀏覽:697
js製作滑鼠拖拽小塊 瀏覽:310
將圖紙拆分為多個CAD文件 瀏覽:779
如何鑒別dsd文件 瀏覽:902
thinkphp不能用js 瀏覽:664
蘋果11粘膩app是什麼意思 瀏覽:670
安卓手機中木馬了怎麼辦 瀏覽:964
java組建模型 瀏覽:53
wifi萬能密碼安全嗎 瀏覽:785
紅色系圓圈是什麼app 瀏覽:714
迷你編程開始的教程怎麼過 瀏覽:216
上海國衡網站有什麼用 瀏覽:29
掃描文件如何全選 瀏覽:363
directx一鍵修復工具 瀏覽:620
如何恢復谷歌同步中刪除的文件夾 瀏覽:215
安卓51轉換為系統應用 瀏覽:789
哪裡看雙11數據 瀏覽:783
文件變成exe如何恢復 瀏覽:49

友情鏈接