android背景颜色渐变及改变title颜色 shape

 

from:http://apps.hi.baidu.com/share/detail/30108924

 

1.Android 在XMl里面共享同一布局文件
一直以为共享同一布局文件都是在之前写好的布局之后复制过来,或者通过 java代码使用layoutInflater Add进来的。但今天提供了一个更为方便的使用方法,可以在你的任意LAYOUT文件里面将其他的LAYOUT文件拿过来使用,代码也很简单,如下:
<?xml version="1.0" encoding="UTF-8"?>
<LinearLayoutandroid:id="@+id/FrameLayout01"
    android:background="@drawable/layout_background"android:layout_width="fill_parent"
    android:layout_height="wrap_content"xmlns:android="http://schemas.android.com/apk/res/android">
<TextViewandroid:text="欢迎你使用本软件"android:id="@+id/TextView01"
        android:textColor="#f0f0f0"android:layout_width="wrap_content"
        android:layout_height="wrap_content"></TextView>
</LinearLayout>

这是我定义的公用layout 文件,我给他起名为:title
然后我们在另外的布局文件如下使用:
<includelayout="@layout/title"
/>
即可将title 的布局直接拿到我们当前的布局文件中。
Tip:使用include标记将layout 放入我们当前的layout文件,也可以直接使用当前 view .findViewByid得到title 布局文件中的任意View 。


2.使用XML的方式为背景添加渐变的效果
首先,在res/Drawable 文件夹里面添加一个jbshape.xml文件,然后写入如下代码:

shape 节点配置的是图形的形式,主要包括方形、圆形等,上边代码为方形,

gradient 节点主要配置起点颜色、终点颜色及中间点的颜色、坐标、渐变效果(0,90,180从左到右渐变,270从上到下渐变)默认从左到右
padding 节点主要配置上下左右的间距

corners 节点配置四周园脚的半径

实现这个效果,需要定一个title.xml 内容如下:

<?xml version=”1.0″ encoding=”UTF-8″?>
<LinearLayout xmlns:android=”http://schemas.android.com/apk/res/android”
android:orientation=”vertical”
android:layout_width=”fill_parent”
android:layout_height=”fill_parent”
android:background=”@drawable/jbshape”

android:paddingLeft=”0px”
>


3.如何用代码自定义Android 自动生成的标题?

在onCreate中加入以下代码:

requestWindowFeature(Window.FEATURE_CUSTOM_TITLE);
setContentView(R.layout.main);
getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.title);

=======================分割线=================================
  1. <?xml version="1.0" encoding="utf-8"?>   
  2. <shape xmlns:android="http://schemas.android.com/apk/res/android">   
  3.     <gradient    
  4.         android:startColor="#3A3C39"    
  5.         android:endColor="#181818"   
  6.         android:angle="270"   
  7.      />   
  8.     <corners android:radius="0dp" />   
  9. </shape>  
  10.   
  11. android:background="@drawable/shape_background_grey"   

其中 android:angle="270"  代表方向, 270表示从上到下,180表示从右到左,默认从左
Java代码
  1. <shape xmlns:android="http://schemas.android.com/apk/res/android"  
  2.     android:shape="rectangle">  
  3.     <gradient android:type="radial" android:gradientRadius="250"  
  4.         android:startColor="#E9E9E9" android:endColor="#D4D4D4" />  
  5. </shape>  
  6.   
  7.   
  8. <shape xmlns:android="http://schemas.android.com/apk/res/android">  
  9.  <gradient android:angle="0" android:startColor="#FFdaf3fc"  
  10.   android:centerColor="#FFd4e9a9" android:endColor="#FFdaf3fc"/>  
  11. </shape>  


在这里要注意android:type="radial"类型的使用会有不同的效果

android:centerColor="#FFd4e9a9" 通常这个也不是被人常用

Java代码
  1. <?xml version="1.0" encoding="utf-8"?>  
  2. <shape xmlns:android="http://schemas.android.com/apk/res/android"  
  3.     android:shape="rectangle">  
  4.     <gradient android:startColor="#509245" android:centerColor="#3e8532"  
  5.         android:endColor="#509245" android:type="linear" android:angle="90"  
  6.         android:centerX="0.5" android:centerY="0.5" />  
  7.     <padding android:left="7dp" android:top="7dp" android:right="7dp"  
  8.         android:bottom="7dp" />  
  9.     <corners android:radius="4dp" />  
  10. </shape>  


android:shape 配置的是图形的形式,主要包括方形、圆形等,上边代码为方形。gradient节点主要配置起点颜色、终点颜色、中间点的坐标、中间点的颜色、渐变角度 (90度为上下渐变,0为左右渐变),padding节点主要配置上下左右边距,corners节点配置四周园角的半径。

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值