Android layer-list 奇妙之处

原创 2016年08月31日 14:29:23

这个是在工作中测试提出的一个bug,但是不是给我的,但是我看到了,感觉没事做,就动手尝试去修改。没想到这个一个简单的问题,哎,自己没有办法。后来这个被我的同事搞定了,发现使用的就是layer-list 给解决掉了,但是我当时就没有想到。特写此文记录之。

先看一个效果。

图片名称

可以看到在键盘弹出的一瞬间有一个蓝色背景,这个颜色是跟上面状态栏的颜色是一样的。进入代码查看,结果这两个颜色是由同一个文件里面的同一个layout引起的。代码如下:

图片名称

顺便说下,状态栏的颜色这里是这样子设置的:
1、在Activity的根布局里设置背景颜色(状态要显示的颜色),然后在上android:fitsSystemWindows="true"
2、再在这个Activity或者Application的主题添加<item name="android:windowTranslucentStatus">true</item>
这个方法在4.4以上的手机都是有效果的。

好了,继续。然后我这个时候我就想着改变根布局的颜色,但是改完之后,状态栏的颜色也就改变了。然后我就没辙了。问了我旁边的同事,他说这个是主题的颜色,没办法修改了。没想到的是另外的一个同事把它搞定了。

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
              android:id="@+id/ll_activity_base"
              android:orientation="vertical"
              android:layout_width="match_parent"
              android:background="@drawable/bg_theme"
              android:layout_height="match_parent"
              android:fitsSystemWindows="true">
    <com.yy.a.widget.CommonTitle
        android:id="@+id/commonTitle"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:background="@color/common_title"/>
    <FrameLayout
        android:id="@+id/content_container"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:background="#f5f9fc"/>
</LinearLayout>

这里与上面不同的是只是根布局的android:background="@drawable/bg_theme"改了。而bg_theme是这样的

图片名称

效果如下:

图片名称

这里就是用的layer-list,恍然大悟啊!!

当时没有一个意思,背景颜色也可以在分解的。上面的layer-list就是把一个背景颜色分成两个部分上面是蓝色的下面是白色效果,实际上是白色覆盖了蓝色,只是上面有个偏移量,没有完全覆盖。这样就达到了想要的效果。
哎,自己都觉得自己有点傻了,这个竟然没有想到。这里有个意识,那就是背景颜色也是再可分的。

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

相关文章推荐

Android样式的开发:layer-list篇

原创文章,转载请注明:转载自Keegan小钢 并标明原文链接:http://keeganlee.me/post/android/20150909 微信订阅号:keeganlee_me 写于201...

使用layer-list实现文字下划线、边框线效果

只需简单配置一下xml资源文件,即可实现下划线、边框线效果。 1,下划线(title_baseline.xml): 使用案例: @color/tab_daylitxt ...

Android 文字阴影、layer-list、shape和selector使用

文件添加阴影效果:

layer-list -- layer-list的基本使用介绍

1. layer-list 是啥?有啥作用?点击查看 安卓官方开发指南中关于layerlsit的说明(1). layer-list 是啥?简单理解,layer 是层,list 是列表,那么 layer...

Layer-list介绍与使用

layer-list 其实就是将多个图片或两种效果按照顺序层叠起来 用于叠加多个图片 实现方式如下: 第一步,在 drawable 文件夹中新建 xml 文件: img_layers.xml 代码...

Android开发:shape和selector和layer-list的(详细说明)

和在Android UI设计中经常用到。比如我们要自定义一个圆角Button,点击Button有些效果的变化,就要用到和。 可以这样说,和在美化控件中的作用是至关重要。 在看这篇文章之前,可以...

Android Layer List 使用实现实例

Layer List是Anroid中的一种图形的方式,它是通过叠加若干张图片的方式来形成最终的图片,最终的图片在代码中表现为一个LayerDrawable对象。在android UI 开发中会经常遇到...
  • cqtddt
  • cqtddt
  • 2014-12-20 19:44
  • 1230

(Android)Adapter类的GetView()方法的奇妙之处

1.问题:看到如下代码,在即没有setContenView()方法又没有LayoutInflater的情况下,如何在Activity中实现view的显示? 一下为Activity中关于OnCreate...

【hibernate框架】性能优化之list_iterate的不同之处

list与iterate的不同之处: 还是用上一次的例子,话题topic和版块category Topic.java: package com.bjsxt.hibernate; import ja...

android中shape,selector,layer-list用法总结

1.先看一个shape的效果 ,xml代码如下: <Button android:id="@+id/textView" android:layout...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)