位置: 编程技术 - 正文

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

  • 增值税纳税申报时间
  • 年度纳税申报表A105000纳税调整项目明细表中,收入
  • 个税汇算清缴时全年一次性奖金汇总到工资薪金怎么操作
  • 超过开票金额不能开票?
  • 退休职工怎么填写单位吗
  • 年前采购
  • 累计所得税前净现金流量计算公式为
  • 工资发多了需要退回吗
  • 小企业会计准则2023电子版
  • 小微企业享受优惠
  • 公益性捐赠公告
  • 纳税等级信息查询
  • 累计已确认收入极可能不会发生重大转回
  • 转口贸易是否缴增值税
  • 毛利润和纯利润的计算公式
  • 继承房产再出售满五是按老证还是按新证计算时间
  • 应付账款是贵公司欠还是欠贵公司
  • linux的pipe
  • 工资薪金专项扣除项各多少
  • 营改增餐饮行业纳税规则
  • ue4 像素流并发
  • frameworkservic.exe是什么进程 有什么作用 frameworkservic进程查询
  • PHP:Memcached::getMultiByKey()的用法_Memcached类
  • 偷渡系统可以正常接收到升级吗
  • 涉税服务实务重点总结
  • php多个判断
  • 固定资产计提折旧是当月还是次月
  • 生活补助费能不能退回来
  • php gd库
  • 企业所得税的缴费基数
  • zendframework3
  • laravel artisan命令
  • php处理异常
  • 数据库如何迁移数据库表
  • mysqlbinlog -vv
  • 在vue3项目中使用vue2
  • java泛型E和T
  • 人力资源公司的招聘专员怎么样
  • 报个税收入需要减去扣款金额吗
  • 调减加计抵减额什么意思
  • 待处理财产损益是什么类科目
  • 投资管理公司怎么收费
  • 金税盘 申报
  • 其他应收款的账龄如何计算时间
  • 月末如何计提增值税附加及增值税
  • 企业职工福利费使用范围和标准
  • 增值税发票丢失罚款多少
  • 民间非营利组织包括哪些单位
  • 减免税款属于政府补助利得吗
  • 减免增值税如何申报
  • 对公帐户发票金额是什么
  • 购车怎么做会计分录
  • sql汇总查询
  • shell 日期运算
  • win7桌面怎么设置到d盘
  • win8怎样关闭系统更新
  • dsapi.exe是什么
  • mac os常用快捷键
  • win7系统的电脑能装win10吗
  • win7系统连不了蓝牙
  • android:ViewPager与FragmentPagerAdapter
  • 记住密码自动登录 会更新登陆信息吗
  • jquery日期组件
  • 详解16型人格
  • linux的open
  • jquery怎么判断复选框选中
  • Node.js 中exports 和 module.exports 的区别
  • node js打包exe
  • js实现盒子移动
  • android需要学什么
  • js二分法排序递归
  • JavaScript lastIndexOf方法入门实例(计算指定字符在字符串中最后一次出现的位置)
  • android 动画特效
  • 陕西省地方税务局公告2017年第2号
  • 公司税务电子发票怎么开
  • 普票怎么入账标识
  • 河南省人民医院和郑大一附院哪个好
  • 加强案件查办工作方案
  • 慧付钱包app官网下载
  • 国家税务总局72号文件
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设