导航:首页 > 编程语言 > 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倒计时器代码相关的资料

热点内容
umeng打包工具 浏览:765
g76锥度牙怎么编程 浏览:430
win10企业版关机很慢 浏览:163
微信短视频是保存在哪个文件夹 浏览:985
win10打印机设置纸张大小设置 浏览:427
卫星测控数据有哪些 浏览:451
格式工厂330教程 浏览:421
童美编程课怎么样 浏览:40
网页代码调试器 浏览:54
读取文件string 浏览:500
ug自动编程软件怎么画数控图 浏览:920
什么网站可以介绍主机 浏览:340
移动短信查询代码 浏览:192
怎么看公司网络是什么时候开通 浏览:960
cad2015文件参照怎么关闭 浏览:678
最小二乘逼近程序 浏览:610
铁路12306密码找不回 浏览:352
默认网络覆盖的脑区 浏览:319
itunes恢复iphone教程 浏览:292
炉石现在是什么版本 浏览:825

友情链接