zoukankan      html  css  js  c++  java
  • Android优化——UI优化(四) 使用stytle

    使用style替换背景,防止Activity黑色背景闪过


    1.原来的布局

    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
                  android:layout_width="match_parent"
                  android:layout_height="match_parent"
                  android:background="@drawable/img_bg"
                  android:orientation="horizontal">
    
        <Button
            android:layout_weight="1"
            android:layout_width="0"
            android:layout_height="wrap_content"
            android:text="New Button"
            android:id="@+id/button2"/>
    
        <Button
            android:layout_weight="1"
            android:layout_width="0"
            android:layout_height="wrap_content"
            android:text="New Button1"
            android:id="@+id/button3"/>
    
    
    </LinearLayout>

    这里写图片描述

    这里我们用了android:background="@drawable/img_bg"来设置了背景图片,但是当我们启动activity是有时候会出现一个黑色的背景,然后才出现我们设置的背景,给用户感觉我们的程序运行的很慢

    2.解决办法

    <resources>
        <!-- Base application theme. -->
        <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
            <!-- Customize your theme here. -->
            <item name="android:background">@drawable/img_bg</item>
        </style>
    </resources>

    我们可以给主题设置一个背景,这样就不会给用户感觉我们的应用卡住了

    3.知其然知其所以然

    1.因为程序的主题是在程序启动的时候加载
    2.Layout中设置的背景实在Activity启动之后才加载
    所以会让用户看到一个黑色背景闪过的过程。

  • 相关阅读:
    在线加密解密
    ctcms Nginx 伪静态
    iTem2 保持连接,解决ssh的"Write failed: Broken pipe"问题
    打开窗口弹出页面
    点击弹窗
    javascript 技巧
    使用Chrome工具来分析页面的绘制状态
    jquery结合JSONP教程—明河谈jquery
    使用 JSONP 实现跨域通信,第 1 部分: 结合 JSONP 和 jQuery 快速构建强大的 mashup
    jsonp详解
  • 原文地址:https://www.cnblogs.com/ldq2016/p/5226593.html
Copyright © 2011-2022 走看看