layer-list 看来是图层的累加 我是这么理解的,字面上是多个层,也就是呢你可以把多个leyaer放在一起然后一其显现出来 如qqw.xml

<?xml version="1.0" encoding="utf-8"?><layer-list xmlns:android="http://schemas.android.com/apk/res/android">   <item>      <shape>         <solid android:color="#FF00ff00" />         <gradient                    android:useLevel="true"                   android:type="sweep"                    android:startColor="#ff000000"                    android:endColor="#ffff0000" />       </shape>   </item>    <item>          <rotate             android:pivotX="50%" android:pivotY="50%"              android:fromDegrees="0" android:toDegrees="80"             android:drawable="@drawable/icon" />      </item>    </layer-list>

然后就可以在别处引用了

<ImageButton android:id="@+id/btnFindMe"          android:layout_width="wrap_content"          android:layout_height="wrap_content"        android:layout_centerInParent="true"        android:background="@drawable/qqw"

例如在android:style/Widget.ProgressBar.Large 或者其他的progressbar风格

 <style name="progressBarStyleSmall" parent="android:style/Widget.ProgressBar.Large"><item name="android:indeterminateDrawable">@drawable/progress</item></style>

<layer-list xmlns:android="http://schemas.android.com/apk/res/android">   <!--   <item android:drawable="@android:drawable/progress_circular_background" />-->     <!--  <item>              <shape android:shape="ring"               android:innerRadiusRatio="3.4"               android:thicknessRatio="6.0">            <gradient                   android:useLevel="true"                   android:type="sweep"                   android:startColor="#ff000000"                   android:endColor="#ffffffff" />        </shape>                      </item> -->    <item>        <rotate            android:pivotX="50%" android:pivotY="50%"            android:fromDegrees="0" android:toDegrees="370"            android:drawable="@drawable/load2" />    </item></layer-list>

而include的使用就是为了降低 重复书写同一个布局而使用的引用,当然他还有另一优点就是和merge的混合使用 当你想添加一个布局而这个布局本身已经有了一个layout你想直接在这个layout下添控件,而你另一个xml中必须有一个layout ,如果你直接引用include这个xml那么就会多了一个layout ,所以这时候你应该把控件填写在merge中,这样就可以直接加入到原来的layout中了。

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"    android:layout_width="fill_parent"    android:layout_height="64dip"    android:gravity="center_vertical"    android:ignoreGravity="@+id/icon">     <include layout="@layout/track_list_item_common" />; </RelativeLayout>

track_list_item_common.xml

<merge xmlns:android="http://schemas.android.com/apk/res/android">     <ImageView android:id="@+id/icon"        android:layout_alignParentLeft="true"        android:layout_centerVertical="true"        android:layout_marginLeft="4dip"        android:layout_width="60px"        android:layout_height="60px"/>...</merge>

从上面的代码可以看到 merge是不需要merge的

更多相关文章

  1. Android学习笔记12:框架布局管理器FrameLayout
  2. 自定义控件和试图(部分原生api)下拉菜单
  3. Material Design详解 主题布局
  4. Android中GridView实现长按多选功能
  5. java化改造--xml布局文件转成java——学习整理
  6. Android5.0 新特性学习总结
  7. Android(安卓)布局中位置和大小单位相关探索
  8. Android布局之RelativeLayout
  9. Android学习之RecyclerView学习(实现瀑布流式布局)

随机推荐

  1. 拿走,产品经理没个秘密武器哪好意思跟人打
  2. 商业模式的七种严刑逼供方式
  3. 资深VC: VC的“增值平台”就是一坨狗屎
  4. 资深投资人全力反击: VC增值平台从来就不
  5. 深度分析: Google 和 Apple 从来就不是死
  6. 总裁发话: 创业者应该如何避免陷入
  7. 藏不住了,Flink 未来发展的最新方向在这里
  8. js基础知识
  9. 利用openwrt编译添加zabbix_proxy3.4.10
  10. iframe与css基础