位置: 编程技术 - 正文

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后更流畅吗)

  • 应纳税所得额高了好还是低了好
  • 当月不发工资会影响社保吗
  • 农产品收购发票使用范围
  • 纳税人为风险纳税人
  • 账面价值低于可变现净值按什么计量
  • 递延所得税资产和递延所得税负债
  • 可供出售金融资产和长期股权投资
  • 权益工具是金融资产还是所有者权益
  • 福利费需要申报吗
  • 为什么社保明细少一个月
  • 利润表收入含其他收入吗怎么填
  • 免税农产品包括烟叶吗
  • 房地产常用的付款方式有哪三种
  • 一般纳税人增值税申报操作流程
  • 购入生产产品用的机器设备一台
  • 财务报表里现金是什么
  • 印刷品生产需要生产许可证吗?
  • 折扣折让红字发票内容
  • 出口押汇与打包押汇区别
  • 退休人员返聘工资怎么缴税
  • 房地产企业未出售的房子是否要交房产税
  • 特定行业职工取得的工资、薪金所得,如何计算个人所得税?
  • 销售不动产增值税税率变化
  • 管理费用没发票能入账吗
  • 存货跌价准备的金额
  • 收到货款未发货可以开发票吗
  • 增值税应税劳务的纳税人是什么意思
  • 同一年可以先娶后嫁吗
  • 鸿蒙系统怎么快速充电
  • deepin怎么退出命令行
  • 新成立的公司没有社保如何投标
  • 荣耀x10的鸿蒙系统怎么开启
  • 支付给其他公司的工程项目管理费
  • 购买税盘怎么做分录
  • 成都划拨土地出让金计算
  • php nl2br
  • 分期收款销售商品纳税义务发生时间
  • phpstorm怎么用
  • 大型语言模型的教育应用
  • dpkg -s命令
  • 管理费用包括哪些会计科目
  • ps怎么用魔棒选区
  • python魔法方法详解
  • 公司与公司往来账表格怎么制作
  • 公司有一个残疾人
  • 资本公积常用的计量方法
  • 小微企业声明函去哪个部门开
  • 购买备用品会计分录
  • 累计折旧怎么做账
  • 印花税申报怎么更正采集处理
  • db2with
  • 未入账分期金额要还吗
  • 设计协会会长
  • 接受捐赠做账
  • 计提以前年度应付股利的分录
  • 支付行业培训流程
  • 事业单位收个人所得税吗
  • 公司员工餐费如何做账
  • 买货品的咨询服务有哪些
  • 购入固定资产一次性税前扣除
  • Windows server 2008设置远程桌面连接的详细步骤(图文教程)
  • vmware左侧的虚拟机名称不见了
  • FastDFS4和Ubuntu12安装及部署步骤
  • mac支持的字体格式
  • mac电脑系统安装
  • 没有推送windows11
  • quickdcf.exe - quickdcf是什么进程 作用是什么
  • 在linux系统中,用来存在系统所需
  • ztree getnodebytid
  • android属性大全
  • nodejs查找文件
  • android开发范例实战宝典
  • js设置按钮禁用和开启
  • 江苏差旅费报销管理规定2021
  • 江苏国税电子税务局网上申报流程
  • 匈牙利离中国广东有多远
  • 江西省税务局官网
  • 国税总局河南省税务局官网
  • 自然人电子税务局
  • 山东税务师协会官网
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设