继续介绍Android中的一些常见的Drawable类型:

7. RotateDrawable:
   - 类型:RotateDrawable
   - 描述:用于旋转另一个Drawable。
   - 示例:
     <rotate xmlns:android="http://schemas.android.com/apk/res/android"
         android:drawable="@drawable/my_image"
         android:fromDegrees="0"
         android:toDegrees="90"/>

8. AnimationDrawable:
   - 类型:AnimationDrawable
   - 描述:用于实现帧动画,由一系列Drawable帧组成。
   - 示例:
     <animation-list xmlns:android="http://schemas.android.com/apk/res/android" android:oneshot="false">
         <item android:drawable="@drawable/frame1" android:duration="200" />
         <item android:drawable="@drawable/frame2" android:duration="200" />
         <!-- 添加更多帧 -->
     </animation-list>

9. TransitionDrawable:
   - 类型:TransitionDrawable
   - 描述:用于实现淡入淡出效果,通常用于状态切换。
   - 示例:
     <transition xmlns:android="http://schemas.android.com/apk/res/android">
         <item android:drawable="@drawable/first_image" />
         <item android:drawable="@drawable/second_image" />
     </transition>

10. ScaleDrawable:
    - 类型:ScaleDrawable
    - 描述:用于在另一个Drawable上应用缩放效果。
    - 示例:
      <scale xmlns:android="http://schemas.android.com/apk/res/android"
          android:drawable="@drawable/my_image"
          android:scaleWidth="2.0"
          android:scaleHeight="2.0"/>

11. GradientDrawable:
    - 类型:GradientDrawable
    - 描述:用于创建渐变的形状,如矩形、圆角矩形等。
    - 示例:
      <shape xmlns:android="http://schemas.android.com/apk/res/android"
          android:shape="rectangle">
          <gradient
              android:startColor="#FF0000"
              android:endColor="#0000FF"
              android:angle="45"/>
      </shape>

12. LevelListDrawable:
    - 类型:LevelListDrawable
    - 描述:用于根据级别(Level)选择不同的Drawable。
    - 示例:
      <level-list xmlns:android="http://schemas.android.com/apk/res/android">
          <item android:maxLevel="0" android:drawable="@drawable/level_0" />
          <item android:maxLevel="1" android:drawable="@drawable/level_1" />
          <!-- 添加更多级别对应的Drawable -->
      </level-list>

13. RippleDrawable:
    - 类型:RippleDrawable
    - 描述:用于创建触摸涟漪效果,通常用于按钮等UI元素。
    - 示例:
      <ripple xmlns:android="http://schemas.android.com/apk/res/android"
          android:color="?android:attr/colorControlHighlight">
          <item android:id="@android:id/mask">
              <shape android:shape="rectangle">
                  <solid android:color="?android:attr/colorAccent" />
              </shape>
          </item>
      </ripple>

这些是Android中一些常见的Drawable类型,每种都有特定的用途和效果。你可以根据应用的需求选择合适的Drawable类型,并通过XML或代码进行配置和使用。Drawable提供了丰富的图形资源管理功能,有助于创建各种各样的界面效果。


转载请注明出处:http://www.pingtaimeng.com/article/detail/15211/Android