提高android应用ui运行效率

大家可以先参考一下这边文章,先发开文章里面提到的overdraw功能,这样你可以看到屏幕的overdraw情况

http://hukai.me/android-performance-render/

由于我们公司奇葩的设计(有一个接近全屏的drawerlayout!!!内容还和drawerlayout下的内容一样!!!只是排版不用!!!),我们的app一直都十分的卡!!!

打开app一看,吓尿了,几乎整个屏幕都是红的!也就是overdraw的情况十分十分严重!!

原来即使是躲在drawerlayout底下,下面的内容仍然是会被绘制的。

尤其是在android 5.0新组件的运用下(虽然我还没用到),在多个layout叠加的情况下,可以通过将下层的layout.setvisibility(View.GONE)让它们暂时消失,等再次出现的时候再让他们visible。

另外,在红色海洋中,我发现一个神奇的现象——fragment并没有死去!

我们在layout中有一个fragment,每次都是调用fragmentManager.replace更换fragment

通过别人的文章发现,这样的话只是将新的fragment覆盖在旧fragment上面,点击新fragment的空白区域时甚至可以点到旧fragment的按钮。

正确的做法应该是在layout中使用framelayout,每次通过replace(R.id.framelayout_name,fragment)更新fragment

这样就能让旧fragment彻底消失。

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-11-01 21:11:37

提高android应用ui运行效率的相关文章

Android界面编程——Android高级UI组件(三)

Android界面编程 Android高级UI组件 2.4.1适配器组件 适配器的作用 适配器充当适配器控件和该视图数据之间的桥梁.适配器提供访问的数据项,并负责产生数据组中的每个项的视图. 常用的适配器 BaseAdapter:抽象类,具有较高的灵活性. ArrayAdapter:最为简单,智能展示一行文字. SimpleAdapter:有较好的扩充性,可以自定义出各种效果. SimpleCursorAdapter:主要用于操作数据库. 常用的适配器控制 适配器控件扩展自ViewAdapter

【Android】一种提高Android进程存活率新方法

[Android]一种提高Android进程存活率新方法 SkySeraph Jun. 19st 2016 Email:[email protected] 更多精彩请直接访问个人站点:www.skyseraph.com 一.基础知识 1.Android 进程优先级 1.1 进程优先级等级一般分法:- Activte process- Visible Process- Service process- Background process- Empty process 1.2 进程优先级号 Pro

android自定义UI模板图文详解

不知道大家在实际开发中有没有自定义过UI模板?今天花时间研究了一下android中自定义UI模板,与大家分享一下. 每个设计良好的App都是自定义标题栏,在自定义标题栏的过程中大部分人可能都是自定义一个标题的xml文件,然后在需要的地方直接通过include来引用,这比起在每个布局文件中写标题栏已经进化很多了,但仍然不是最简单有效的方法,我们为什么不能自定义一个标题控件呢?今天就带大家自己做一个标题栏控件.效果图如下: 开始啦: 第一步:自定义xml属性 新建一个android项目,在value

Android 自定义UI圆角按钮

Android实际开发中我们一般需要圆角的按钮,一般情况下我们可以让美工做出来相应的按钮图片,然后放上去即可,另外我们可以在布局文件中直接设置,也可以达到一样的效果.下面讲解在布局文件中自定义圆角按钮的小Demo. 代码很简单,实现效果图: 源代码: 源代码: 这里主要是xml布局文件实现: MainActivity: package com.android_drawableresource; import android.app.Activity; import android.os.Bund

Android 非UI线程中更新UI

Android 非UI线程中更新UI runOnUiThread(new Runnable() { public void run() { onDown(null); } });

看大家android界面设计是拿Android Design UI Kit设计的,不直接在eclipse里设计,但是UI KIT怎么用呢

============问题描述============ Android 4.4 Design UI Kit (Nexus 4 version)打开十psd格式的,看网上说吧psd里面自己需要用到的东西保存为png格式,然后是要把png格式的图片当做android控件的背景使用? 其他类似的工具呢? ============解决方案1============ 一切不问是不是就问为什么的都是耍流氓,不知道你是怎么得出"android界面设计是拿Android Design UI Kit设计的,不直

Android 之UI自适应解决方案

1.概况 作为Android开发人员,最头疼的莫过于让自己开发的程序在不同终端上面的显示效果看起来尽量一致(当然,如果要充分利用大屏幕的优势另当别论).在全球范围内来讲,android有着数以亿计的设备,其中就不乏设备分辨率多种多样,以及设备屏幕物理尺寸的多样化. 总得来说我们需要做的有三点,其一让APP的每个UI中的每个View宽和高更加灵活以适应不同分辨率.其二对于大屏幕设备(PAD)需要有不同的设计,竟可能多的展示内容,获取你整个APP的所有UI都可以做到一个布局中来.其三图标资源需提供不

Android更新Ui进阶精解(二)

<代码里的世界> 用文字札记描绘自己 android学习之路 转载请保留出处 by Qiao http://blog.csdn.net/qiaoidea/article/details/45115047 Android更新Ui进阶精解(一) android ui线程检查机制 Android更新Ui进阶精解(二) android 线程更新UI机制 1.回顾 第一篇讲了对Ui线程更新的方法和见解,然后接着讲了线程检查机制,这里来详细分析下更新Ui的核心--Android中消息系统模型.当然,这里要

Android更新Ui的几种方法和见解

<代码里的世界> 用文字札记描绘自己 android学习之路 转载请保留出处 by Qiao http://blog.csdn.net/qiaoidea/article/details/45115047 1. 简述 先贴一个我们刚做Android开发时候最容易遇到的一个错误异常 AndroidRuntimeException :"Only the original thread that created a view hierarchy can touch its views&quo