这个总体来说是比较简单的,计时跳转一般调用Android Studio中的Handler方法。

  一、发生点击事件跳转页面

  1. mBtnTextView = (Button) findViewById(R.id.btn_textview);//将类型强制转换为Button
  2. mBtnTextView.setOnClickListener(new View.OnClickListener() {//给Button设置一个点击事件
  3. @Override
  4. public void onClick(View view) {
  5. //跳转到TextView演示界面
  6. Intent intent = new Intent(Main3Activity.this, TextViewActivity.class);
  7. startActivity(intent);
  8. }
  9. });

  二、最基本的计时跳转页面

  1. new Handler().postDelayed(new Runnable() {
  2. public void run() {
  3.  
  4. //你要跳转或执行的操作
  5. setResult(RESULT_CODE);
  6.  
  7. }
  8. }, 2000);

    

  三、计时跳转页面,并且在发生点击事件时直接跳转。

  1. package com.example.lenovo.tallybook;
  2.  
  3. import android.content.Intent;
  4. import android.os.Handler;
  5. import android.support.v7.app.AppCompatActivity;
  6. import android.os.Bundle;
  7. import android.view.View;
  8. import android.view.WindowManager;
  9. import android.widget.Button;
  10. import android.widget.TextView;
  11. import android.widget.Toast;
  12.  
  13. import java.util.Timer;
  14. import java.util.TimerTask;
  15.  
  16. public class MainActivity extends AppCompatActivity implements View.OnClickListener {
  17. private int recLen = 5;//跳过倒计时提示5秒
  18. private Button mBtn;
  19. Timer timer = new Timer();
  20. private Handler handler;
  21. private Runnable runnable;
  22.  
  23. @Override
  24. protected void onCreate(Bundle savedInstanceState) {
  25. super.onCreate(savedInstanceState);
  26. setContentView(R.layout.activity_main);
  27. //flag使我们必须要设置的变量
  28. int flag = WindowManager.LayoutParams.FLAG_FULLSCREEN;
  29. //设置当前窗体为全屏显示
  30. getWindow().setFlags(flag, flag);
  31. initView();
  32. timer.schedule(task, 1000, 1000);//等待时间一秒,停顿时间一秒
  33. /**
  34. * 正常情况下不点击跳过
  35. */
  36. handler = new Handler();
  37. handler.postDelayed(runnable = new Runnable() {
  38. @Override
  39. public void run() {
  40. //跳转到首界面
  41. Intent intent = new Intent(MainActivity.this, HomeActivity.class);
  42. startActivity(intent);
  43. finish();
  44. }
  45. }, 5000);//延迟5S后发送handler信息
  46.  
  47. }
  48.  
  49. private void initView() {
  50. mBtn = findViewById(R.id.btn_1);//跳过
  51. mBtn.setOnClickListener(this);//跳过监听
  52. }
  53.  
  54. TimerTask task = new TimerTask() {
  55. @Override
  56. public void run() {
  57. runOnUiThread(new Runnable() { // UI thread
  58. @Override
  59. public void run() {
  60. recLen--;
  61. mBtn.setText("跳过 " + recLen);//在控件上显示距离跳转的剩余时间
  62. if (recLen < 0) {
  63. timer.cancel();
  64. mBtn.setVisibility(View.GONE);//倒计时到0隐藏字体
  65. }
  66. }
  67. });
  68. }
  69. };
  70.  
  71. @Override
  72. public void onClick(View v) {
  73. switch (v.getId()) {
  74. case R.id.btn_1:
  75. //发生点击事件时直接跳转到首界面
  76. Intent intent = new Intent(MainActivity.this, HomeActivity.class);
  77. startActivity(intent);
  78. finish();
  79. if (runnable != null) {
  80. handler.removeCallbacks(runnable);
  81. }
  82. break;
  83. default:
  84. break;
  85. }
  86.  
  87. }
  88. }

    在上面的代码中,btn_1是我在activity_main中设置的进入的按钮的id,他的跳转是建立在这个Button之上的。

  

Android Studio计时跳转或点击跳转至主页面的更多相关文章

  1. 安装android Studio和运行react native项目(跳坑篇)

    1.需配环境变量,值为sdk的地址. ANDROID_HOME  值:E:\Users\HP\AppData\Local\Android\sdk 2.下载gradle-2.14.1-all.zip 包 ...

  2. Android Studio 之 通过 Intent 完成点击按钮实现页面跳转

    •Intent 简介 Intent 是 Android 程序中各组件之间进行交互的一种重要方式: 它不仅可以指明当前组件想要执行的动作,还可以在不同组件之间传递数据. Intent 有多个构造函数,其 ...

  3. Android Studio学习随笔-基本事件(点击)

    最常见的点击事件有三种创建方法,在MainActivity.java的onCreate函数(在启动程序是优先运行的程序)中创建setOnClickListener(动态运行)(最常见) protect ...

  4. android studio使用真机测试时点击Debug调试模式时报Error running app:No target device found,点击运行模式却是启动正常的

    原因是adb没检测到设备(包括真机和虚拟机). 在Terminal执行adb devices命令,查看有没有连接到的设备. 如果没有设备,确认虚拟机是否正确打开,真机是否连接打开USB调试并安装驱动. ...

  5. [Learn Android Studio 汉化教程]第一章 : Android Studio 介绍

    注:为了看上去比较清晰这里只转载了中文 原地址:  [Learn Android Studio 汉化教程]第一章 : Android Studio 介绍 本章将引导您完成安装和设置开发环境,然后你就可 ...

  6. Android Studio 1.0 (稳定版) 完全攻略

    这篇博文中主要从以下几点进行叙述: 1.Android Studio安装与使用 2.Android Studio特性 3.Android Studio优点 Android Studio 安装与使用 A ...

  7. 【Android应用开发】Android Studio - MAC 版 - 快捷键详解

    博客地址 : http://blog.csdn.net/shulianghan/article/details/47321177 作者 : 韩曙亮 要点总结 : -- 熟练使用快捷键 : 在任何编程环 ...

  8. 第一章 : Android Studio 介绍 [Learn Android Studio 汉化教程]

    摘自:http://ask.android-studio.org/?/question/789,为便于学习重新整理.. 本章将引导您完成安装和设置开发环境,然后你就可以跟随本书的例子和课程学习. 首先 ...

  9. android studio 入门坑

    安装 android studio,碰到下面这个图片,直接跳过. 安装时候,选择自定义设置,里面可以配置 sdk 的存放位置. 新建工程后,gradle sync 比较慢,可以 修改工程中的 buil ...

随机推荐

  1. @SpringBootApplication(exclude = {DataSourceAutoConfiguration.class}) 注解的作用

    在学习boot 项目的时候 ,发现在启动类中有一个这个的注解 @SpringBootApplication(exclude = {DataSourceAutoConfiguration.class}) ...

  2. 开始一个django项目的流程

    1.明确开发站点的主题,(即此站点的作用), 确定站点的各种功能,需求. 2.优先设计数据库. 数据库的设计要合理,不能想当然的设计,最好能够以表格的形式展现出来,避免以后遗忘,也避免内容的重复. 3 ...

  3. C# 读写欧姆龙(Omron)PLC ,C#使用Fins-tcp协议读写数据

      本文将使用一个gitHub开源的组件技术来读写西门子plc数据,使用的是基于以太网的TCP/IP实现,不需要额外的组件,读取操作只要放到后台线程就不会卡死线程,本组件支持超级方便的高性能读写操作 ...

  4. IOS Block代码块的定义与使用

    代码块的本质是和其他的变量类似,不同的是,代码块存储的数据是一个函数体.使用代码块,你可以像调用其他标准函数一样的调用,可以传入参数,并得到返回值.     脱字符是代码块的语法标记.下图表示代码块的 ...

  5. C++ 跨语言调用 Java

    C++ 跨语言调用 Java Java JDK 提供了 JNI 接口供 C/C++ 程序调用 Java 编译后的类与方法,主要依赖于头文件(jni.h) 和 动态库(jvm.so/jvm.dll),由 ...

  6. 【转】@RequestBody注解出现的三点错误

    错误1 {     "timestamp": 1529747704259,     "status": 415,     "error": ...

  7. Github最简单实用的Git命令指南

    create a new repository on the command line   echo "# test" >> README.md git init gi ...

  8. 浏览器执行代码 是jsp 服务端执行的是<%%>

    接着上一个视频,想使得注销页面有一个很好的效果,那到底能不能再首页页面的<head>标签里写如下代码呢? 答案是肯定不行的.看执行以后的效果,执行之后,看到的网页源代码,如下图所示,造成这 ...

  9. CSVN配置自动备份策略

    在浏览器中登录CSVN管理页面,登录地址就是ip:3343,版本库->backup schedule ,选择type of job(备份类型),when to run(备份频率和时间),numb ...

  10. lua qt測試成功

    用luabind寫了一個qt的簡單binding 測試成功