Android延时操作的三种方法
在Android开发中我们可能会有延时执行某个操作的需求,例如我们启动应用的时候,一开始呈现的是引导页面,3秒后进入主界面,这就是一个延时操作。
下面是实现延时操作的三种方法:
一、使用线程的休眠实现延时操作
new Thread(new Runnable() { @Override public void run() { Thread.sleep(1000); // 休眠1秒 /** * 延时执行的代码 */ } }).start();
二、使用TimerTask实现延时操作
Timer timer = new Timer(); timer.schedule(new TimerTask() { @Override public void run() { /** * 延时执行的代码 */ } },1000); // 延时1秒
三、使用Handler的postDelayed()方法实现延时操作
new Handler().postDelayed(new Runnable() { @Override public void run() { /** * 延时执行的代码 */ } },1000); // 延时1秒
注:由于前两种在更新UI时,如果不使用消息处理机制的话,会报如下异常:Only the original thread that created a view hierarchy can touch its views.(只能在主线程中更新UI),为了避免这种错误出现,在使用延时操作的时候推荐使用第三种。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。
相关推荐
-
Android 开发延时调用的几种方法
我们在安卓开发中,有时候会遇到需要一个程序推迟一段时间执行,也就是延时执行,比如说App首页显示定格3秒,然后自动跳到登录页的情况,这个怎么做呢?本文参考网上,整理了一下几点,供广大安卓开发者参考,希望对读者有所帮助. 一.开启新线程 new Thread(new Runnable(){ public void run(){ Thread.sleep(XXXX); handler.sendMessage(); //告诉主线程执行任务 } }).start 二.利用定时器 imerTask tas
-
Android延时操作的三种方法
在Android开发中我们可能会有延时执行某个操作的需求,例如我们启动应用的时候,一开始呈现的是引导页面,3秒后进入主界面,这就是一个延时操作. 下面是实现延时操作的三种方法: 一.使用线程的休眠实现延时操作 new Thread(new Runnable() { @Override public void run() { Thread.sleep(1000); // 休眠1秒 /** * 延时执行的代码 */ } }).start(); 二.使用TimerTask实现延时操作 Timer ti
-
Android Activity进出动画三种方法
Android Activity进出动画三种方法 实现activity的进出场动画总共有3种方式,下面会一一列出,首先给出示例的动画xml文件. 动画的xml文件 <?xml version="1.0" encoding="utf-8"?> <translate xmlns:android="http://schemas.android.com/apk/res/android" android:fromYDelta="
-
PHP实现链式操作的三种方法详解
本文实例讲述了PHP实现链式操作的三种方法.分享给大家供大家参考,具体如下: 在php中有很多字符串函数,例如要先过滤字符串收尾的空格,再求出其长度,一般的写法是: strlen(trim($str)) 如果要实现类似js中的链式操作,比如像下面这样应该怎么写? $str->trim()->strlen() 下面分别用三种方式来实现: 方法一.使用魔法函数__call结合call_user_func来实现 思想:首先定义一个字符串类StringHelper,构造函数直接赋值value,然后链式
-
Android编程实现XML解析与保存的三种方法详解
本文实例讲述了Android编程实现XML解析与保存的三种方法.分享给大家供大家参考,具体如下: 简介 在Android开发中,关于XML解析有三种方式,分别是: 1. SAX 基于事件的解析器,解析速度快,占用内存少.非常适合在Android移动设备中使用. 2. DOM 在内存中以树形结构存放,因此检索和更新效率会更高.但是对于特别大的文档,解析和加载整个文档将会很耗资源 3. PULL 基于事件的解析器,不同于SAX是,PULL是主动请求下一个事件,所以在可控上PULL要比SAX实用.An
-
Android中使用定时器的三种方法
本文实例为大家分享了Android中使用定时器的三种方法,供大家参考,具体内容如下 图示: 因为都比较简单,所以就直接贴代码(虑去再次点击停止的操作),有个全局的Handler负责接收消息更新UI 第一种方法:Thread.sleep();方法 Runnable runnable = new Runnable() { @Override public void run() { while (true) { mHandler.sendEmptyMessage(0); try { Thread.sl
-
Android开发之保存图片到相册的三种方法详解
目录 方法一 方法二 方法三 有三种方法如下:三个方法都需要动态申请读写权限否则保存图片到相册也会失败 方法一 /** * 保存bitmap到本地 * * @param bitmap Bitmap */ public static void saveBitmap(Bitmap bitmap, String path) { String savePath; File filePic; if (Environment.getExternalStorageState().equals(Environm
-
asp 延时 页面延迟的三种方法
ASP页面延迟的两个简单方法 asp延时第一种 复制代码 代码如下: <% Response.Buffer = True %> <% ' Setup the variables necessary to accomplish the task Dim TimerStart, TimerEnd, TimerNow, TimerWait ' How many seconds do you want them to wait... TimerWait = 5 ' Setup and start
-
Android读取服务器图片的三种方法
Android链接服务器获取图片在此提供三种方法,已通过验证,无误. 方法一: public static Bitmap getImage(String path){ try { HttpURLConnection conn = (HttpURLConnection) new URL(path).openConnection(); conn.setConnectTimeout(5000); conn.setRequestMethod("GET"); System.out.println
-
Android定制RadioButton样式三种实现方法
三种方法 1.使用XML文件进行定义 res/drawable/radio.xml 复制代码 代码如下: <?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android"> <!-- 未选中-> <item android:state_checked=&qu
-
Android 自定义弹性ListView控件实例代码(三种方法)
关于在Android中实现ListView的弹性效果,有很多不同的方法,网上一搜,也有很多,下面贴出在项目中经常用到的两种实现ListView弹性效果的方法(基本上拿来就可以用),供大家参考: 弹性ListView 第一种方法: import android.content.Context; import android.content.res.Configuration; import android.util.AttributeSet; import android.util.Display
随机推荐
- php打包压缩文件之ZipArchive方法用法分析
- git多人协作_动力节点Java学院整理
- python虚拟环境的安装配置图文教程
- IE6下focus与blur错乱的解决方案
- ASP.NET MVC5验证系列之Remote Validation
- php设计模式 FlyWeight (享元模式)
- ThinkPHP模板判断输出Present标签用法详解
- python实现调用其他python脚本的方法
- Android 桌面图标右上角显示未读消息数字
- js中opener与parent的区别详细解析
- Shell脚本学习指南之查找与替换介绍
- Easyui 之 Treegrid 笔记
- 基于jquery自己写tab滑动门(通用版)
- jQuery实现dialog设置focus焦点的方法
- innerHTML 和 getElementsByName 在IE下面的bug 的解决
- 关于.net(C#)中的跨进程访问的问题
- Android常见控件使用详解
- 学习Vim合并行的方法和技巧
- pyqt5简介及安装方法介绍
- Django框架orM与自定义SQL语句混合事务控制操作