Android UI设计特效

来源:互联网 发布:血观音 知乎 编辑:程序博客网 时间:2024/05/16 18:29


文章转自:http://blog.csdn.net/wuxianglong/article/details/6575995


一、背景色渐变

背景色渐变可以通过在res/drawable中定义一个XML文件实现,gradient.xml的代码如下:

[xhtml] view plaincopyprint?
  1. <?xml version="1.0" encoding="utf-8"?>  
  2. <shape xmlns:android="http://schemas.android.com/apk/res/android">  
  3.     <gradient   
  4.     android:startColor="#FFFFFF"  
  5.     android:endColor="#000000"  
  6.     android:angle="45"/>  
  7. </shape>  

其中,shape是用来定义形状的,gradient定义该形状里面为渐变色填充,startColor起始颜色,endColor结束颜色,angle表示方向角度。当angle=0时,渐变色是从左向右。 然后逆时针方向转,当angle=45时为从左下到右上,当angle=90时为从下往上。

然后,设置Activity的背景为:android:background="@drawable/gradient",这样即可实现背景色渐变效果,效果图如下:

二、标题栏进度条

在后台线程中执行各种操作(网络连接、大数据存储)的时候,我们希望让客户能看到后台有操作在进行,那么既能有效的提示用户,又不占用当前操作空间,最好的方法就是在标题栏有个进度条。实现的方法很简单,代码如下:

[java] view plaincopyprint?
  1. public void onCreate(Bundle savedInstanceState) {  
  2.      super.onCreate(savedInstanceState);  
  3.      // 先给Activity注册界面进度条功能     
  4.      requestWindowFeature(Window.FEATURE_INDETERMINATE_PROGRESS);  
  5.      setContentView(R.layout.main);  
  6.      // 在需要显示进度条的时候调用这个方法  
  7.      setProgressBarIndeterminateVisibility(true);  
  8.      // 在不需要显示进度条的时候调用这个方法  
  9.      //setProgressBarIndeterminateVisibility(false);  
  10.      setContentView(R.layout.main);  
  11.     }  

效果图如下(注意图中红线标注的地方):

三、界面边框圆角

界面边框圆角的实现方式同样是在res/drawable中定义一个XML文件,corners.xml的代码如下:

[xhtml] view plaincopyprint?
  1. <?xml version="1.0" encoding="utf-8"?>  
  2. <shape xmlns:android="http://schemas.android.com/apk/res/android">    
  3.     <solid android:color="#FF9900" />    
  4.     <corners android:topLeftRadius="10dp"   
  5.         android:topRightRadius="10dp"    
  6.         android:bottomRightRadius="10dp"   
  7.         android:bottomLeftRadius="10dp"/>    
  8. </shape>  

其中,solid的表示填充颜色,而corners则是表示圆角,注意的是这里bottomRightRadius是左下角而不是右下角,bottomLeftRadius右下角。

然后,在Activity中设置背景为上面的xml,android:background="@drawable/corners",这样即可实现边框圆角。效果如下:

THE END!

原创粉丝点击