Android样式开发之layer-list、level-list总结

layer-list将多个图片或效果按照顺序层叠起来,通常和selector、shape配合使用。

layer-list中的item是按照顺序从下往上叠加的,即先定义的item在下面,后面的依次往上面叠放
Android样式开发之layer-list、level-list总结_第1张图片
layer-list.jpeg

如图可以实现Tab的背景效果,和带阴影的圆角矩形

对于TAB,是由一个红色的层加一个白色的层叠在一起显示的结果。



   

    
        
            
            
                
            
            
            
        
    


    
        
            
            
                
            
            
            
        
    



对于带阴影的圆形矩阵是由一个灰色的层加上白色的层组成



    
    
        
            
            
        
    
    
    
        
            
            
        
    

注意事项:

  • layer-list可以作为根节点,也可以作为selector中item的子节点。、* layer-list可以添加多个item子节点,每个item子节点对应一个drawable资源,按照item从上到下的顺序叠加在一起,再通过设置每个item的偏移量就可以看到阴影等效果了。
  • layer-list的item可以通过下面四个属性设置偏移量:
    • android:top 顶部的偏移量
    • android:bottom 底部的偏移量
    • android:left 左边的偏移量
    • android:right 右边的偏移量
      这四个偏移量和控件的margin设置差不多,都是外间距的效果。如何不设置偏移量,前面的图层就完全挡住了后面的图层,从而也看不到后面的图层效果了

level-list

在Android开发中,有时候需要对一个ImageView设置很多不同图片以表示某种应用状态,比如,典型的是手机的信号强度从强到弱有多种状态图;wifi有解锁和未解锁状态,解锁和未解锁状态的图标也是很多种。如果每次都一一的通过ImageView设置图片的src来达到这一目的,实在是太过于繁琐,且维护和管理起来不便。因此,引入ImageView的setImageLevel和level-list实现这一目的
res/drawable下新建xml


    
    
    
    
    

ImageView image=(ImageView)findViewById(R.id.image);  
        image.setImageResource(R.drawable.xxxx);  
        image.setImageLevel(3);  

你可能感兴趣的:(Android样式开发之layer-list、level-list总结)