Android仿360卫士布局风格

已经好久没更新博客了,今天花点时间给大家写一篇布局开发。给大家带来的布局效果是仿照360安全卫士,因为这个小项目是某个公司需要开发的,闲着也是闲着,就给自己找点活干,这个项目暂时还是停在这。目前呢,只是完成了主界面大概布局,逻辑代码还没实现呢。

首先,我看到咱们的效果图。然后再看到360安全卫士的界面图。效果是不是还可以呢?图片素材我都是随便找的,后期真正做的时候得替换掉。


Android仿360卫士布局风格_第1张图片                                 Android仿360卫士布局风格_第2张图片

我们先从最上面说起,中间一个标题,右上角一个menu的图标,采用的是沉浸式标题栏。最下面是个自定义控件,大家也可以不使用自定义控件代替,不过为了后期的方便,我还是把它做成了自定义控件的形式。要实现沉浸式标题栏,我们只需要在Activity中加入这几行代码就可以了。

 if(VERSION.SDK_INT>=VERSION_CODES.KITKAT){
        	getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
        	getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION);
        }


在加入了下面三行代码后,再在xml布局文件中加入这两行。这两行很关键,不然的话就会造成明显影响。

 android:clipToPadding="true"
    	 android:fitsSystemWindows="true"

演示代码如下:

protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        //沉浸式状态栏
        if(VERSION.SDK_INT>=VERSION_CODES.KITKAT){
        	getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
        	getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION);
        }
        setContentView(R.layout.activity_main);
        initView();
    }



首先,我们创建一个activity_main布局文件,这个是自动生成的。代码如下:


	
    
    
    	
    	    
    
    
     


在这,为了防止xml文件过长,不易于修改,使用了include嵌套了另外一个xml布局文件。引入方式如下。

 

中间部分的middle.xml代码如下:  




    
    
          
              
               
          
		
          
          
        
          
      
    
    
   
   
       
        
       
   
   

大家可能好奇中间的那个线怎么实现的呢?其实很简单。我们可以用一个TextView就可以了,设置一下背景颜色,使得高度或者宽度为1dp就可以了。

另外,中间的那个按钮,当按下的时候颜色加深。这时候得增加selector选择器。

在Drawable目录下新增三个文件button_shape_be_pressed.xml,button_shape_not_press.xml,button_shape.xml。

  button_shape_be_pressed.xml文件如下:  




    
    
    
	
	
	


button_shape_not_press.xml




    
    
	
	
	


button_shape.xml代码如下:  



    
    


把这三个文件放在Drawable目录下就可以了,在xml的Button控件设置下background就可以了。使用方式如下:  



好了,就是这么简单,看到布局文件的时候,熟能生巧,大家多多动手吧!   最后,给大家放上该软件的结构图。

Android仿360卫士布局风格_第3张图片

你可能感兴趣的:(Android,专注Android开发,Android,布局,自定义控件,组合控件,UI)