`
nick714
  • 浏览: 26130 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

笔记:提高UI执行效率的几种方法

 
阅读更多

最近看了一些google开发者文档里的一些文章,做了一些笔记,方便以后查看.

笔记:提高UI执行效率的几种方法

  1.使用<Include/>减少UI代码

  2.减少Layout的使用,比如宁可用一个RelativeLayout ,而不用两个LinearLayout嵌套,因为这样的话,系统要渲染两次

  3.学会使用ViewStubs,这个控件不消耗内存,只是在需要显示布局的时候加载布局文件

  4.学会使用<Merge/>,很多时候用<Merge/>代替<FrameLayout/>可以有效减少布局层次,提高效率

  5.学会使用TraceView跟踪程序的执行时间、执行效率,使用hierarchyviewer查看UI的分布情况,使用allocation tracker跟踪内存回收的优化。

  6.当你的背景不需要显示(比如WebView可以全部显示屏幕的时候),这个时候就不需要画背景了,你可以建立一个主题的xml文件

<resources>
    <style name="Theme.NoBackground" parent="android:Theme">
        <item name="android:windowBackground">@null</item>
    </style>
</resources>
然后activity代码调用android:theme="@style/Theme.NoBackground" 

 

分享到:
评论

相关推荐

    Android云笔记源代码

    在数字化时代,云笔记作为一种高效的信息管理和分享工具,已经成为了人们日常生活和工作中不可或缺的一部分。Android云笔记源代码的解析与研究,不仅有助于开发者深入理解移动应用的开发流程,也能为个性化和定制化...

    一些平时的学习笔记C#/OPENCV/Android等

    每种布局都有其特点和适用场景,选择合适的布局可以提高UI设计的效率和效果。 ### 4. Android UI线程与多线程操作 - **链接**: [线程与UI](https://zhidao.baidu.com/question/1758184751276618068.html) - **...

    韩顺平 java循序渐进学从入门到精通 笔记

    - **缓冲流**:提高读写效率,如`BufferedReader`和`BufferedWriter`。 #### 数据库操作 - **SQL语句**:用于查询、更新数据库。 - **表的管理**:创建表、修改表结构、插入数据等操作。 以上内容覆盖了韩顺平...

    dotnet 读 WPF 源代码笔记 了解 WPF 已知问题 后台线程创建 WriteableBitmap 锁住主线程.rar

    1. **双缓冲渲染**:WPF默认采用双缓冲技术提高UI的平滑度,但有时可能导致内存占用过高或绘制延迟。 2. **性能问题**:由于WPF是基于矢量图形的,复杂的UI布局可能会消耗大量CPU和GPU资源。 3. **内存泄漏**:不...

    AndroidDevelopmentArt, Android开发艺术探索,脑图笔记.zip

    AsyncTask提供了一种简单处理后台任务的方法,但需注意内存泄漏问题。 9. **权限管理**:从Android 6.0(API 23)开始,部分权限在运行时动态请求。了解权限模型并正确处理权限请求是合规开发的必要条件。 10. **...

    Leap Motion学习及开发笔记

    - 对于需要交互的物体,尽量减少物理属性的应用,以提高交互效率和稳定性。 - 优化手部追踪算法,确保在不同光照条件下都能准确识别手势和动作。 通过遵循这些指导原则,可以显著提升 Leap Motion 应用的用户体验和...

    nifi使用笔记

    NiFi 可以通过以下几种方式启动: 1. **前台运行**:`bin/nifi.sh run` 2. **后台运行**:`bin/nifi.sh start` 3. **重新启动**:`bin/nifi.sh restart` 4. **安装为服务**:`bin/nifi.sh install` 和 `/etc/init.d...

    JavaSE笔记_工具.zip

    6. **多线程**:Java内置了对多线程的支持,通过Thread类和Runnable接口可以创建并管理多个执行线程,理解和运用并发编程是提高程序效率的关键。 7. **Java Swing和JavaFX**:这两是Java的图形用户界面(GUI)库,...

    android 学习笔记整理

    熟悉其界面和快捷键能极大提高开发效率。 4. **Activity和Intent**:Activity是Android应用的基本组件,代表用户可以看到的一个屏幕。Intent则用来在Activity之间传递信息,实现应用间的交互。 5. **布局和UI设计*...

    Flex + Hessian 学习笔记(二)

    它设计目的是提高网络通信效率,尤其是在处理大量数据时。Hessian提供了一种轻量级的序列化格式,可以将Java、C++或其他支持的语言中的对象转换为二进制流,从而在客户端和服务器之间进行高效传输。 在"Flex + ...

    c 课设-mai开发笔记

    熟练使用这些函数可以提高编程效率。 9. **面向过程编程**:C语言是面向过程的,这意味着我们需要通过函数来组织和执行任务。了解如何设计和调用函数,以及如何通过函数实现模块化编程,是学习C的关键。 10. **...

    MapReduce学习笔记,亲自测试写出来的,1000分都不贵

    - **NodeManager**:通常与 DataNode 部署在同一台物理机上,以提高数据访问效率。 - **配置文件**:主要有 `mapred-site.xml` 和 `yarn-site.xml`。 ##### mapred-site.xml 配置示例 ```xml &lt;name&gt;mapreduce....

    Delphi学习笔记

    Delphi的集成开发环境(IDE)提供了一流的代码编辑器,支持代码提示、自动完成和语法高亮,提高了开发效率。 Delphi的编译器是其另一个亮点。它采用快速编译技术,能够生成原生机器码,这使得Delphi编译的程序运行...

    应用笔记LAT1339+AFCI应用笔记三、使用mlflow管理模型

    为了解决这一问题,mlflow作为一种强大的工具被引入,它可以极大地提高AI实验的效率,提供便捷的实验结果比较方法。 #### 二、mlflow简介 mlflow是一款开源平台,用于管理和追踪机器学习项目中的实验数据。它能够...

    Android编程入门教程andbook与Android开发教程笔记完全版

    10. **Android Jetpack组件**:包括Room(持久化库)、LiveData(数据观察)、ViewModel(生命周期感知组件)等,它们是提高开发效率和代码质量的关键。 通过这两份资源的学习,无论是对Android的基础概念还是进阶...

    eclipse插件开发学习笔记15-24章

    本学习笔记涵盖了从第15章到第24章的内容,这部分主要包括了以下几个核心知识点: 1. **插件项目结构**:在Eclipse中开发插件首先需要了解其基本项目结构,包括Plugin Project、Feature Project和Update Site ...

    Symbian学习笔记(中国移动开发者社区).pdf

    - **多线程编程**: 适当使用多线程技术提高程序的响应速度和执行效率。 ### 4. Symbian 基础知识 #### 4.1 Symbian 架构概述 - **用户界面层**: 提供了丰富的 UI 控件和交互功能。 - **服务层**: 包括文件系统、...

    vb.net图书管理系统

    图书管理系统是一个典型的信息管理系统,它通过计算机技术对图书馆的各种资源进行高效、便捷的管理和维护,极大地提高了图书馆的工作效率和服务质量。 首先,我们来看系统的架构设计。在VB.NET中,我们可以采用三层...

    线程中控制窗口内容

    在MFC(Microsoft Foundation Classes)框架中,线程主要用于实现多任务并行处理,它可以提高应用程序的响应性和效率。在Windows编程中,我们通常使用两种类型的线程:主线程和工作线程。主线程是创建应用程序时默认...

    Dynamics CRM 2011 编程系列:JSON序列化类

    使用这些工具,开发者可以方便地在Dynamics CRM 2011环境中处理JSON数据,提高应用程序的效率和可维护性。 为了进一步深入理解这一主题,可以参考提供的博客链接(http://blog.csdn.net/ghostbear),那里应该有...

Global site tag (gtag.js) - Google Analytics