关于android启动页的一些优化建议
来源:互联网 发布:南京招聘网络写手 编辑:程序博客网 时间:2024/06/01 17:38
启动页也称之为闪屏页,就是在android应用第一次启动时展现的页面,值得一提的是大家不要理解为引导页(一般是应用首次安装或者更新的时候出现)
其实这个界面的实现很简单,代码量也很少
- 第一步,配置AndroidManifest文件,将他作为应用入口
<activity android:name=".activity.StartActivity" android:screenOrientation="portrait" android:theme="@style/StartTheme"> <intent-filter> <action android:name="android.intent.action.MAIN"/> <category android:name="android.intent.category.LAUNCHER"/> </intent-filter> </activity>
- 第二步,配置xml文件,设置background或者放置一个ImageView设置scaleType都行,这里我采用最简单的方式
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:background="@mipmap/start_jianshu" android:layout_width="match_parent" android:layout_height="match_parent"></LinearLayout>
- 第三步,设置代码,只需要做一个延迟跳转到登录或者是主界面就行了
public class Start1Activity extends AppCompatActivity { @Override protected void onCreate(@Nullable Bundle savedInstanceState) { super.onCreate(savedInstanceState); new Handler().postDelayed(new Runnable() { @Override public void run() { startActivity(new Intent(StartActivity.this,MainActivity.class)); } }, 3000); }}这样写启动页,是存在很大的问题的
- 问题场景:当用户误点了你的应用图标,想赶紧撤回去,于是点击了back键,过了几秒钟我在其他的应用浏览,突然跳转到你的应用 这种用户体验相当不好吧
- 问题分析:虽然你的activity销毁了,你的handler却还存在,虽然你已退出启动页,延迟加载的代码依然会执行
- 优化后代码,当用户点击back键,移除handler回调
public class StartActivity extends AppCompatActivity { private Handler handler; private MyThread thread; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_start); ButterKnife.bind(this); handler = new Handler(); thread = new MyThread(); handler.postDelayed(thread, 3000); } private class MyThread implements Runnable { @Override public void run() { startActivity(new Intent(StartActivity.this, MainActivity.class)); finish(); } } @Override public void onBackPressed() { super.onBackPressed(); handler.removeCallbacks(thread);//移除回调 }}当然,这不是唯一的处理方案,类似,爱奇艺,网易新闻这种就稍微流氓一些,当用户误点以后,是不允许用户返回的,是直接禁用了back键,只能通过杀死进程的方式退出了。
针对启动页图片选择的建议
当然,这个问题不是我们开发能决定的,图一般都是设计给的,android加载大图的时候容易oom,在启动页加载大图,会导致启动短暂的黑屏,白屏,增加内存消耗,低端机上可能直接oom,使用纯背景加logo的方式,会比直接用一张大图好得多,即使真的需要用图片,也不要动不动几百K或者达到1M以上的图片,可以使用较小一点分辨率,可以通过tinypng这个网站先将图片压缩一下
0 0
- 关于android启动页的一些优化建议
- 关于android启动页优化建议
- Android关于线程优化以及性能优化的一些建议
- 关于android应用开发中性能优化的一些建议
- 看到的一些关于优化的建议
- 关于网站页面优化的一些建议
- 关于页面性能优化的一些建议
- Android 性能优化的一些建议
- 关于数据库sql优化的一些小建议
- Unity的一些优化建议
- Unity 优化的一些建议
- MySQL优化的一些建议
- nginx优化的一些建议
- 关于android的apk版本升级的一些建议
- 关于Android开发的40条优化建议
- 关于Android开发的40条优化建议
- 关于Android开发的40条优化建议
- 关于Android开发的40条优化建议
- Android中SQLite使用总结
- CSDN_MarkDown官方教程
- HDU1599 find the mincost route (floyd求最小环)
- Android 开发常用icon下载
- No result defined for action and result input
- 关于android启动页的一些优化建议
- ContentProvider数据库共享之——实例讲解
- 转 -- 微信读书iOS性能优化
- Linux 系统简介
- PyCharm2016.3专业版注册码
- 4s,5s,6s,6sp屏幕像素
- HDU 5750 Dertouzos(数论)
- 找出单独的这些整形数
- 菜鸟程序员和大神程序员差距在哪里