位置: 编程技术 - 正文

App启动界面效果设计(app启动页动画效果)

编辑:rootadmin

推荐整理分享App启动界面效果设计(app启动页动画效果),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:app启动界面效果怎么设置,app启动画面,app启动界面效果图,app启动界面设计,app启动画面,app启动界面设计,app启动界面效果图,app启动界面设计,内容如对您有帮助,希望把文章链接给更多的朋友!

转载请标明出处: 每个Android应用启动之后都会出现一个Splash启动界面,大多数的Splash界面都是会等待一定时间,然后切换到下一个界面。但如果app启动时间过长,可使用启动界面让用户耐心等待这段枯燥的时间。Splash界面一般用于显示产品的LOGO、产品名称、版本信息等,也可以完成对系统状况的检测,如网络是否连通、电源是否充足、检测新版本等,也可以预先加载相关数据。启动界面SLEEP的时间=固定时间-预处理任务时间。

App启动界面效果设计(app启动页动画效果)

一、为APP创建一个简单的启动界面

所谓简单的启动界面,即界面只用于显示产品的LOGO、产品名称等常规信息,不做系统状态检测或数据加载的操作。设计方法如下:实现两activity,一个是SplashActivity,用来做启动画面,另一个是将要跳转的Activity。通过创建一个新的线程,延迟指定的时间再执行Activity的跳转,并调用finish方法结束当前启动activity。实例:高仿QQ启动界面1.src/.../WelcomeActivity.javapackage com.example.qq; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.view.Window; /*欢迎动画*/ public class WelcomeActivity extends Activity { protected void onCreate(Bundle savedInstanceState) { // requestWindowFeature(Window.FEATURE_NO_TITLE); //设置显示窗口界面特征,此时为窗口无标题 super.onCreate(savedInstanceState); setContentView(R.layout.welcome); final Intent intent = new Intent(WelcomeActivity.this,LoginActivity.class); //设置一个用于启动新Activity的"意图" intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); //使系统为需要启动的Activity寻找与当前Activity不同的任务栈 new Thread(new Runnable(){ //创建一个新的线程来显示欢迎动画,指定时间后结束,跳转至指定界面 public void run() { try { Thread.sleep(); //欢迎界面启动持续时间 getApplicationContext().startActivity(intent); //启动新的界面,获取应用的上下文,生命周期是整个应用,应用结束才会结束 finish(); //结束欢迎界面activity } catch (InterruptedException e) { e.printStackTrace(); } } }).start(); } } 2.res/layout/welcome.xml<LinearLayout xmlns:android=" android:layout_width="match_parent" android:layout_height="match_parent" android:theme="@android:style/Theme.NoTitleBar.Fullscreen" android:background="@drawable/splash"> </LinearLayout> 分析说明:(1)隐藏应用标题方法 a.在显示的布局文件中,添加 android:theme="@android:style/Theme.NoTitleBar.Fullscreen" b.在逻辑代码setContentView(R.layout.login)之前添加requestWindowFeature(Window.FEATURE_NO_TITLE); (2)调用 Activity.finish()方法时,结果和用户按下 BACK 键一样:告诉 Activity Manager 该 Activity 实例完成了相应的工作,可以被“回收”。SplashActivity 从 Active 状态转换 Stoped 状态,并被系统从栈中移除,标志可以被“回收”。(3)创建一个新的线程完成界面跳转,两种方法:方法一:new Thread(new Runnable(){ public void run() { Thread.sleep(); //延时时间 ..... finish(); }}方法二:new Handler().postDelayed(new Runnable() { public void run() { ........ SplashActivity.this.finish(); } }, ); 说明:Handler().postDelayed 是延迟指定的时间再执行Handler类主要可以使用如下3个方法来设置执行Runnable对象的时间:>立即执行Runnable对象 public final boolean post(Runnable r); >在指定的时间(uptimeMillis)执行Runnable对象 public final boolean postAtTime(Runnable r, long uptimeMillis); >在指定的时间间隔(delayMillis)执行Runnable对象 public final boolean postDelayed(Runnable r, long delayMillis); 运行结果:二、自定义复杂启动界面设计 在启动界面友好展示的同时,后台可以做很多操作,比如系统检测,预加载数据等,这些后台操作可以使用AsyncTask来实现。1.Splash启动界面设计,res/layout/welcome.xml<RelativeLayout xmlns:android=" android:layout_width="match_parent" android:layout_height="match_parent" android:theme="@android:style/Theme.NoTitleBar.Fullscreen" android:background="#FFFFFF"> <!--第一级 --> <TextView android:id="@&#;id/copy_right" android:layout_height="wrap_content" android:layout_width="wrap_content" android:layout_centerHorizontal="true" android:layout_alignParentBottom="true" android:padding="dp" android:text="By 老蒋良心出品"/> <!-- 第一级 --> <RelativeLayout android:layout_width="fill_parent" android:layout_height="fill_parent"> <!-- 第二级 --> <LinearLayout android:layout_width="wrap_content" android:layout_height="wrap_content" android:orientation="vertical" android:layout_centerInParent="true"> <!-- logo图片 --> <ImageView android:id="@&#;id/logoImage" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/logo" android:layout_gravity="center_horizontal" android:background="#ffffff"/> <!-- 产品名称、版本号 --> <LinearLayout android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="dp" android:orientation="horizontal"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:padding="6dip" android:text="创新生活app" android:textStyle="bold" android:textSize="sp"/> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:padding="3dip" android:text="V1.0" android:textStyle="bold" android:textSize="sp"/> </LinearLayout> <!-- 分隔线 --> <View android:layout_width="fill_parent" android:layout_height="1dp" android:layout_marginLeft="dp" android:layout_marginRight="dp" android:background="#dddddd"/> <!-- 内容描述 --> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center_horizontal" android:padding="6dip" android:text="科技创新,振兴中华." android:textSize="sp"/> <ProgressBar android:id="@&#;id/refresh_list_footer_progressbar" android:layout_width="dip" android:layout_height="dip" style="@android:attr/progressBarStyleLargeInverse" android:layout_gravity="center"> </ProgressBar> </LinearLayout> </RelativeLayout> 2.后台处理,SplashActivity.javapublic class SplashActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.splash); new AsyncTask<Void, Void, Integer>() { //后台操作 protected Integer doInBackground(Void... params) { int result; long startTime = System.currentTimeMillis(); result = loadingCache(); long loadingTime = System.currentTimeMillis() - startTime; if (loadingTime < SHOW_TIME_MIN) { try { Thread.sleep(SHOW_TIME_MIN - loadingTime); } catch (InterruptedException e) { e.printStackTrace(); } } return result; } //操作后台操作的结果 @Override protected void onPostExecute(Integer result) { // ... ... Intent intent = new Intent(); intent.setClassName(SplashActivity.this, getString(R.string.splash_out_activity)); startActivity(intent); finish(); //两个参数分别表示进入的动画,退出的动画 overridePendingTransition(R.anim.fade_in, R.anim.fade_out); }.execute(new Void[]{}); } private int loadingCache() { } 。。。。。 } 参考资料:

Android系统Root与静默安装 Android系统Root与静默安装静默安装,指的是安装时无需任何用户干预,直接按默认设置安装应用。因为,它的无需用户干预,很多情况下变成了用户压根

[置顶] android UI(内容)更新的方法之handler、runOnUiThread() 摘要:在android应用程序开发中,特别是在使用多线程开发程序时,经常会需要在其他线程完成某些工作后更新UI。而众所周知,更新UI的功能必须放在UI主

Android系统上的键盘监控 键盘监控键盘监控,顾名思义是在应用软件在运行时,用户在设备上的一举一动都将被详细记录下来,更多的实在使用者毫无觉察的情况下将屏幕内容

标签: app启动页动画效果

本文链接地址:https://www.jiuchutong.com/biancheng/376586.html 转载请保留说明!

上一篇:Android 网络通信框架Volley简介(Google IO 2013)(android网络通信http)

下一篇:Android系统Root与静默安装(安卓手机root后更流畅吗)

  • 预收账款的税费怎么处理
  • 资源税的计税依据煤炭
  • 汇算清缴银行手续费
  • 办公用品普通发票的会计分录
  • 开票超过定额怎么办
  • 购买汽车的保健因素
  • 建筑行业预缴增值税可以用进项抵缴吗
  • 待抵扣进项税额转入进项税额
  • 实收资本如何网上转账
  • 销售货物未开发怎么处理
  • 公共绿地绿化
  • 转让土地使用权属于销售无形资产吗
  • 增值税普通发票查询真伪
  • 收到法人的借款
  • 广告公司制作警示牌可以开具什么样的发票?
  • 确认收入销售折让分录
  • 当月发货必须当月开票吗
  • 预付房租是否需要分摊处理呢?
  • 政府补贴转给其他公司
  • 小规模和一般纳税人的区别
  • 单位收到增值税专用开票人写管理员
  • 企业出租房屋交什么税?
  • 公司租车税务处理办法
  • 社保可以在税前扣除吗
  • 汽车配件税收分类编码
  • 个人税务代人开普票
  • 2021税收分类编码大全
  • 征缴工会筹备金的规定
  • 浅谈收入与成本的关系
  • 房地产企业收到定金 什么时候交增值税 账务处理
  • 小规模免增值税印花税用交吗
  • 购买债券发生的交易费用计入哪个科目
  • 展会展位费发票税率
  • 银行承兑汇票开票流程图
  • 必要收益率的计算题目
  • 资源税可能计入
  • 招标服务费计算公式
  • 工商年报中企业税费缴纳怎么填写
  • 重置edge浏览器设置
  • 电脑开机后桌面图标变乱
  • CodeIgniter扩展核心类实例详解
  • citespace关键词共现分析
  • 施工企业成本费用有哪些方面构成
  • 工会经费计入什么费用明细科目
  • 个人所得税累计扣除是什么意思
  • vuerouter模块化
  • cd相关命令
  • urljoin使用
  • 对供应商的罚款通知怎么写
  • 体检的收据是什么
  • 进项税额申报表怎么填写
  • 分公司非独立核算企业所得税处理
  • mysql的使用实验总结与分析
  • 发票验旧后还要缴销吗
  • 农业发展公司有没有库存商品的
  • 预收账款可以长期挂账吗
  • 住宿发票抵税
  • 快递公司的会计都需要做什么
  • 房地产企业收到政府土地补偿款如何入账
  • 企业重组合并
  • 小规模纳税人购进税控机的税如何抵扣
  • 公司建立初期做账
  • 非营利医疗机构免征哪几种税
  • sql server的相关技术知识
  • win8右下角
  • win8更新设置
  • macbook内部
  • win8计算器在哪里找
  • linux操作系统入门教程
  • Linux使用scp命令进行文件远程的上传或下载
  • 安卓打开前置摄像头
  • linux rpm解压
  • js 单击弹出对话框
  • android自定义ui
  • Linux开发基于Qt的Android应用指定调试设备
  • 如何查询车辆购买的保险
  • 责令立即改正和责令限期整改
  • 开票项目信息分类查询
  • 国考报四川的去哪考
  • 深圳如何举报税务违法
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设