全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

Android 应用启动欢迎界面广告的实现实例

Android 应用启动欢迎界面广告

0.写在前面

在这篇教程中来实现一个类似于微信的的延迟3秒再进入主界面的效果。

1.项目准备

先新建一个空的android项目。里面只自带一个MainActivity,首先我们再新建一个Activity叫做WelcomeActivity继承自Activity。

Activity代码如下:

//package在此省略,根据实际自行添加

import android.app.Activity;
import android.os.Bundle;
import android.support.annotation.Nullable;

/**
 * Created by HUPENG on 2016/9/21.
 */
public class WelcomeActivity extends Activity {
  @Override
  protected void onCreate(@Nullable Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_welcome);
  }
}

布局文件代码如下:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
       android:orientation="vertical"
       android:layout_width="match_parent"
       android:layout_height="match_parent">

  <ImageView
      android:layout_width="match_parent"
      android:layout_height="match_parent"
      android:id="@+id/imageView"
      android:layout_gravity="center_horizontal"
      android:src="@mipmap/welcome"/>
      <!--android src属性指定imageView里面要显示的资源文件的来源路径,也就是在欢迎界面显示的图片,在这里我已经预先上传了一张图片了-->
</LinearLayout>

修改清单文件AndroidManifest.xml

声明WelcomeActivity以及修改Activity的启动顺序,由MainActivity改成WelcomeActivity

原来的xml

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
     package="supershare.android.hupeng.me.supershare">

  <application
      android:allowBackup="true"
      android:icon="@mipmap/ic_launcher"
      android:label="@string/app_name"
      android:supportsRtl="true"
      android:theme="@style/AppTheme">
    <activity android:name=".MainActivity">
      <intent-filter>
        <action android:name="android.intent.action.MAIN"/>
        <category android:name="android.intent.category.LAUNCHER"/>
      </intent-filter>
    </activity>

  </application>

</manifest>

修改成

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
     package="supershare.android.hupeng.me.supershare">

  <application
      android:allowBackup="true"
      android:icon="@mipmap/ic_launcher"
      android:label="@string/app_name"
      android:supportsRtl="true"
      android:theme="@style/AppTheme">
    <activity android:name=".WelcomeActivity">
      <intent-filter>
        <action android:name="android.intent.action.MAIN"/>
        <category android:name="android.intent.category.LAUNCHER"/>
      </intent-filter>
    </activity>
    <activity android:name=".MainActivity">

    </activity>

  </application>

</manifest>

至此项目的布局已经完成了,现在来完成跳转部分源码

在这里用到的核心函数为

Handler.sendEmptyMessageDelayed

主要用来发送延迟消息

首先新建一个消息处理对象,负责发送与处理消息

 private Handler handler = new Handler() {
    @Override
    public void handleMessage(Message msg) {
      super.handleMessage(msg);
    }
  };

在handleMessage方法中处理消息,在这里接收到消息不做复杂处理以后直接执行跳转操作

贴上WelcomeActivity全部代码

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.support.annotation.Nullable;
import android.view.Window;
import android.view.WindowManager;

/**
 * Created by HUPENG on 2016/9/21.
 */
public class WelcomeActivity extends Activity {
  @Override
  protected void onCreate(@Nullable Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    //隐藏标题栏以及状态栏
    getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
        WindowManager.LayoutParams.FLAG_FULLSCREEN);
    /**标题是属于View的,所以窗口所有的修饰部分被隐藏后标题依然有效,需要去掉标题**/
    requestWindowFeature(Window.FEATURE_NO_TITLE);
    setContentView(R.layout.activity_welcome);
    handler.sendEmptyMessageDelayed(0,3000);
  }

  private Handler handler = new Handler() {
    @Override
    public void handleMessage(Message msg) {
      getHome();
      super.handleMessage(msg);
    }
  };

  public void getHome(){
    Intent intent = new Intent(WelcomeActivity.this, MainActivity.class);
    startActivity(intent);
    finish();
  }
}

2.总结

在这里主要利用了android.os.Handler的消息的延迟发送以及处理。

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!


# Android  # 应用启动欢迎界面广告  # 欢迎界面  # Android使用ViewPager实现滚动广告  # Android 知乎广告效果实现代码  # Android 实现广告欢迎界面(倒计时)  # Android开发实现广告无限循环功能示例  # Android滚动条广告实现代码示例  # Android ViewPager实现无限循环轮播广告位Banner效果  # Android仿淘宝头条向上滚动广告条ViewFlipper  # Kotlin FrameLayout与ViewPager2控件实现滚动广告栏方法  # 在这里  # 新建一个  # 跳转  # 是在  # 也就  # 在此  # 希望能  # 不做  # 自带  # 谢谢大家  # 类似于  # 中来  # 贴上  # 来完成  # 传了  # 标题栏  # 状态栏  # 我已经  # 完成了  # 在这篇 


相关文章: 建站之星如何取消后台验证码生成?  如何挑选优质建站一级代理提升网站排名?  如何快速搭建FTP站点实现文件共享?  免费制作小说封面的网站有哪些,怎么接网站批量的封面单?  如何在万网自助建站中设置域名及备案?  网站制作培训多少钱一个月,网站优化seo培训课程有哪些?  如何快速上传建站程序避免常见错误?  免费网站制作appp,免费制作app哪个平台好?  怎么用手机制作网站链接,dw怎么把手机适应页面变成网页?  网站制作模板下载什么软件,ppt模板免费下载网站?  建站之星价格显示格式升级,你的预算足够吗?  建站之星体验版:智能建站系统+响应式设计,多端适配快速建站  网站网页制作电话怎么打,怎样安装和使用钉钉软件免费打电话?  网站制作免费,什么网站能看正片电影?  如何将凡科建站内容保存为本地文件?  建站之星多图banner生成与模板自定义指南  在线ppt制作网站有哪些软件,如何把网页的内容做成ppt?  c++怎么实现高并发下的无锁队列_c++ std::atomic原子变量与CAS操作【详解】  如何高效生成建站之星成品网站源码?  如何规划企业建站流程的关键步骤?  javascript中的try catch异常捕获机制用法分析  javascript基本数据类型及类型检测常用方法小结  电视网站制作tvbox接口,云海电视怎样自定义添加电视源?  实例解析Array和String方法  定制建站如何定义?其核心优势是什么?  如何快速搭建高效服务器建站系统?  如何用免费手机建站系统零基础打造专业网站?  如何在Ubuntu系统下快速搭建WordPress个人网站?  如何用狗爹虚拟主机快速搭建网站?  实惠建站价格推荐:2025年高性价比自助建站套餐解析  网站制作说明怎么写,简述网页设计的流程并说明原因?  网站制作企业,网站的banner和导航栏是指什么?  英语简历制作免费网站推荐,如何将简历翻译成英文?  如何通过商城自助建站源码实现零基础高效建站?  教学网站制作软件,学习*后期制作的网站有哪些?  公司网站建设制作费用,想建设一个属于自己的企业网站,该如何去做?  创业网站制作流程,创业网站可靠吗?  Thinkphp 中 distinct 的用法解析  东莞专业网站制作公司有哪些,东莞招聘网站哪个好?  如何选择长沙网站建站模板?H5响应式与品牌定制哪个更优?  企业网站制作费用多少,企业网站空间一般需要多大,费用是多少?  如何选择适合PHP云建站的开源框架?  制作企业网站建设方案,怎样建设一个公司网站?  C#怎么使用委托和事件 C# delegate与event编程方法  制作网站的公司有哪些,做一个公司网站要多少钱?  魔方云NAT建站如何实现端口转发?  香港服务器选型指南:免备案配置与高效建站方案解析  建站之星后台管理系统如何操作?  微信小程序制作网站有哪些,微信小程序需要做网站吗?  详解ASP.NET 生成二维码实例(采用ThoughtWorks.QRCode和QrCode.Net两种方式) 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。