首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

按钮在Android中将背景显示为AnimationDrawable

是一种常用的动画效果,可以通过一系列的图片帧来创建动画。AnimationDrawable是Android提供的一个Drawable子类,可以在XML或代码中定义动画,并将其设置为按钮的背景。

AnimationDrawable可以通过逐帧动画来展示一系列图片,从而创建动态效果。每一帧都可以设置持续时间,以控制动画的速度。可以通过添加帧、设置帧的持续时间和启动动画来实现按钮背景的动画效果。

AnimationDrawable的分类是Drawable,它继承自Drawable类。优势是简单易用,可以通过添加多个帧来创建复杂的动画效果。它适用于需要展示一系列图片帧的场景,比如按钮点击时的动画效果、加载中的动画等。

AnimationDrawable的应用场景包括但不限于:

  1. 按钮点击时的动画效果:可以通过AnimationDrawable来实现按钮点击时的动画效果,比如按钮背景逐渐变亮或变暗、按钮背景颜色渐变等。
  2. 加载中的动画:可以使用AnimationDrawable来展示加载中的动画效果,比如旋转的加载图标、闪烁的加载文字等。
  3. 自定义动画效果:通过AnimationDrawable可以自定义各种动画效果,根据需求来展示不同的动画效果。

腾讯云相关产品中,可以使用腾讯云移动推送(https://cloud.tencent.com/product/tpns)来实现消息推送功能,通过推送消息可以触发按钮点击时的动画效果。同时,腾讯云移动推送还提供了丰富的消息推送功能和统计分析功能,可以满足移动应用的推送需求。

总结:按钮在Android中将背景显示为AnimationDrawable是一种常用的动画效果,可以通过一系列的图片帧来创建动画。AnimationDrawable是Android提供的一个Drawable子类,适用于需要展示一系列图片帧的场景,比如按钮点击时的动画效果、加载中的动画等。腾讯云移动推送可以用来实现消息推送功能,触发按钮点击时的动画效果。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

2014-10-31Android学习------序列帧动画,开始,结束监听的解决--------GIF动画实现

这句话: com.wust.citylist.activity.MyLetterListView 这样做就把我们自己定义的视图当做一个控件显示在布局上了,这个时候我们就可以去处理它的监听事件了 5....创建系列帧动画最简单的方法就是在XML文件中去定义动画,把它们放在文件夹下,res/drawable/folder(folder是可以自己定义的,也可以不要这个文件),把他们设置为一个视图对象的背景。...你可以它的解释, // 得到背景,这个背景已经被编译成为一个AnimationDrawable对象 Drawable getBackground()...android:duration :动画的时间长度,以毫秒为单位,来显示该帧, 它是定义在item中的 3....android:oneshot :如果为true,那么该动画将执行运行一次,然后停止 它是定义在中的 了解了这些,我们接下来就需要去写自己的动画了

1.4K30

android-drawable子类介绍

) 当StatListDrawable资源作为组件的背景或者前景Drawable资源时,可以随着组件状态的变更而自动切换相对应的资源,例如,一个Button可以处于不同的状态(按钮按下、获取焦点) 我们可以使用一个...--android:state_pressed 是否按下,如一个按钮触摸或者点击。..." /> 我们可以看到,AnimationDrawable资源文件以元素为根,包含一系列的节点,每一个节点定义了一个帧(frame)及持续时常。...上述动画运行了3个帧,通过设置android:oneshot 属性(attribute)为true,动画会循环一次并停留在最后一帧,如果为false那么会轮询(loop)的运行动画 我们可以通过编码来加载播放动画...frameAnimation.start(); 注意:AnimationDrawable. start()方法不能够在Activity的onCreate()方法中调用,因为AnimationDrawable

46010
  • AnimationDrawable 实现正在加载的旋转动画

    AnimationDrawable是实现Drawable animations的基本类。 推荐用XML文件的方法实现Drawable动画,不推荐在代码中实现。...XML文件的指令(即属性)为动画播放的顺序和时间间隔。  在XML文件中元素为根节点,节点定义了每一帧,表示一个drawable资源的帧和帧间隔。...设置为false则动画循环播放。文件可以添加为Image背景,触发的时候播放。...使用:     方式1:Drawable Animation本身就是一个Drawable资源文件,所以直接在xml中设置为指定View的背景即可。animation.start().    ...因为AnimationDrawable并未完全关联到Window, 在onCreate()方法中,View并未完成显示(同理,在此方法中测量某个View的宽高,常得到0值。

    2.1K80

    动画那点小秘密

    前言 在Android应用开发中我们每天都在接触动画(Activity开、关,页面滑动、点击按钮等都有动画效果),但入门容易,真正做好很难。如果要把效果做得自然、看上去很爽需要你有一定的美感。...2 帧动画   帧动画是一帧一帧的显示动画效果。创建帧动画除了通过在xml中用animation-list作为根节点、item定义每一帧要显示的图片之外,也可以用Java代码的形式来创建帧动画。...但GIF只能显示256色。   ...SVG格式具备目前网络流行的jpg和png等格式无法具备的优势:可以任意放大图形显示,但绝不会以牺牲图像质量为代价;可在SVG图像中保留可编辑和可搜寻的状态;平均来讲,SVG文件比其它格式的图像文件要小很多...),为了降低功耗,尽量控制动画的大小,以及动画出现的时机,最好是用户触发某个操作后执行动画效果,不要一进入界面就执行动画; 谨慎使用AnimationDrawable,在5.0之前会很耗内存;并且AnimationDrawable

    90620

    Android动画效果-更新中

    然后,在第一个按钮监听器中设置了动画的持续时间,之后启动该动画。在第二个按钮监听器中取消该动画 ?...然后,在第一个按钮监听器中分别设置了动画的持续时间,并通过addAnimation方法添加到动画集中,之后启动该动画。 在第二个按钮监听器中取消该动画。...然后,在res/drawable目录下新建一个帧动画配置文件,并将其设置为图片控件的背景。...然后,在第一个按钮监听器中使用addFrame方法添加了动画帧,之后直接调用start方法来开始动画执行,在第二个按钮监听器中直接调用stop方法来停止动画执行 ?...比如,一个按钮做平移的动画,虽然按钮的确做了平移,但按钮可点击的区域并没随着平移而改变,还是在原来的位置。

    3.8K20

    Android动画基础 | 概述、逐帧动画、视图动画

    ), 可以理解为,它事先加载好了一系列的图片; 和普通的Drawable一样,它可以被设为视图对象的背景; 最简单的定义逐帧动画的方法, 在drawable文件夹下新建一个xml文件; 在xml...将定义好的AnimationDrawable对象(drawable/xml's name——)设置进来作为View控件的背景; 在布局文件对应的Java代码处,实例化这个...View控件; 通过(AnimationDrawable)view.getBackground();获得view的背景Drawable对象并向下转型为AnimationDrawable对象, 然后赋给一个...break; } } } 实例化方才设置了AnimationDrawable为背景的View对象; 使用view实例getBackground()获得背景; view.getBackground...最后, 可以看到帧动画默认是对设置好的一系列帧图做循环往复的播放的, 可以在Activity.java中,通过animationDrawable.setOneShot(true); 将动画设置为只播放这套帧图一次

    4K21

    帧动画和补间动画

    逐帧显示一张图片,连起来成为动画 在res/drawable/目录下,创建一个xxx.xml的文件 添加节点,设置是否循环android:oneshot:”false”...添加条目节点,设置资源android:drawable=”@drawable/xxx” 设置执行时间,android:duration=”100” 逐帧添加对应的图片 获取ImageView...对象,通过findViewById() 调用ImageView对象的setBackgroundResource()设置背景资源,参数:资源文件 调用ImageView对象的getBackground()...方法获取到AnimationDrawable对象 getBackground()方法是异步的在一个单独的线程里面执行的,因此,有时候,下面的代码是播放不了的,建议放在按钮点击事件里,或者屏幕触摸事件里...调用AnimationDrawable对象start()方法,开始播放 tween动画 透明度 获取AlphaAnimation对象,new AlphaAnimation(),参数:从0.0f透明度,

    74520

    Android中的动画

    本章简介 在Android程序设计过程中,除了使用简单的按钮、文本框等简单控件来构建基本界面,我们还可以通过为界面添加动画效果,使得界面更加变得更加绚丽,更加吸引人。...在屏幕上提供一个ImageView和四个Button,当用户单击这些Button按钮时,依次实现“开始动画”、“停止动画”、“运行一次动画”、“代码中添加动画”的功能。...按钮的单击事件中,我们实现了动画文件的装载、AnimationDrawable的构建及动画的播放功能。...当取值为0时(默认),从0度旋转到360度,动画就会停止;如果属性值为N(N>0),动画会不停地显示N+1次;当取值为infinite或-1时,动画会永不停地运行下去。...2.3.4 透明补间动画 ​很多游戏在设计时,都会让已经被消灭的敌人慢慢地在屏幕中变成透明状,最后完全消失,以避免挤占宝贵的屏幕显示资源,而在Android系统中,这种效果同样十分简单,只需要运用我们下面提到的这种技术即可

    11410

    安卓开发_浅谈Android动画(三)

    一、LayoutAnimation布局动画 用于为一个layout里面的控件,或者是一个ViewGroup里面的控件设置动画效果 在res-anim文件下新建一个动画xml文件 1 <?...  使用步骤: 1、在res下创建drawable文件夹创建资源文件 xx.xml (名字随便取) 有个属性 android:oneshot="false" 判断是否重复播放帧动画,默认false  表示循环播放...类 (1)找到要显示动画的ImageView控件 imageView = (ImageView) findViewById(R.id.imageView); (2)给图片控件设置资源 imageView.setBackgroundResource...(R.drawable.waiting_anim); //将帧动画资源文件作为View控件背景 (3)获取AnimationDrawable 类对象 AnimationDrawable rocketAnimation...= (AnimationDrawable) imageView.getBackground(); //获取背景并强转成为帧动画对象 (4)启动动画 rocketAnimation.start(); 效果图

    60340

    Android各种各样的Drawable-更新中

    只需为InsetDrawable设置一个insetXxx设置不同 方向的边距,然后为设置为Dialog的背景即可! ?...也就是level的大小从0到10000,level为0时完全不显示,为10000时完全显示。是用Drawable提供的setLevel(int level)方法来设置剪切区域。 ?...Code 在主布局文件中设置一个ImageView,将src设置为clipDrawable!...0.5 pivotY:设置参照点的Y坐标,取值为0~1,默认是50%,即0.5 ps:如果出现旋转图片显示不完全的话可以修改上述两个值解决!...StateListDrawable在Android中使用的非常广泛,所有控件的背景基本上都使用了StateListDrawable,比如按钮就具有很多状态,按下状态、选中状态、默认状态、禁用状态等等,像这样在不用的状态下显示效果不一样的时候

    1K30

    Android 动画笔记

    视图动画只能操纵少数几个属性,例如缩放比例、旋转角度等,许多属性,例如背景颜色,就没法通过视图动画进行操作,属性动画更加通用。...视图动画仅仅修改了绘制位置,并没有实际修改属性值,例如用视图动画实现一个按钮移动的效果,按钮可以正确移动,但是用户点按按钮的位置却没有改变。...="500" android:valueTo="1f"/> 为了运行这个动画,你需要在运行这个动画集合前在代码中将这个 XML 资源填充到 AnimatorSet 对象里,...通过将 android:oneshot 属性设置为 true 来使得动画仅播放一次并停在最后一帧。如果设定为 false,那么这个动画就会循环播放。...假设这段 XML 被保存在 res/drawable/ 目录下的 rocket_thrust.xml 文件里,那么它就可以像下面的例子一样添加进 View 对象的背景并在被触控时开始播放: AnimationDrawable

    23720

    Android 逐帧动画:关于 逐帧动画 的使用都在这里了!

    作用对象 视图控件(View) 如Android的TextView、Button等等 不可作用于View组件的属性,如:颜色、背景、长度等等 ---- 2....步骤2:设置 & 启动 动画 设置 & 启动 逐帧动画有两种方式:在XML / Java代码。...方式1:XML实现 步骤1:在 res/anim的文件夹里创建动画效果.xml文件 此处路径为res/anim/knight_attack.xml 步骤2:设置动画资源(图片资源) knight_attack.xml...animation-list> 步骤3:在Java代码中载入 & 启动动画 public class FrameActivity extends AppCompatActivity { private...animationDrawable.stop(); // 特别注意:在动画start()之前要先stop(),不然在第一次动画之后会停在最后一帧,这样动画就只会触发一次

    1.9K30

    Android开发之帧动画

    帧动画最简单,通过顺序播放一系列的图像产生动画,有点类似动画片 以tomcat案例来讲解 1、首先准备好一组图片(网上找的现成的一组图片),然后定义一个AnimationDrawable,命名为ani.xml..."> 2、将上述的Drawable作为ImageView的背景 android="http://schemas.android.com...="@drawable/ani" /> 3、通过AnimationDrawable 来播放动画,这里设置点击背景时触发动画,代码很简单,就没有加注释了 public...background = (AnimationDrawable) imageView .getBackground(); imageView.setOnClickListener...帧动画.gif 5、注意点 帧动画虽然比较简单,但由于都是图片连续播放形成的,在图片比较多且较大的时候,容易引起OOM,所以需要谨慎选择。

    69480

    Android开发框架Collection

    ); break; } mState = state; } 4.注意:在自定义加载更多样式时,如果需要有没有更多加载更多数据提示同样需要在布局中写好,然后在onSatae中根据状态对加载和没有跟多显示提示进行显示隐藏操作...进行相关设置 属性 作用 hideBackBtn 隐藏返回按钮 setBarBackgroundColor 设置Bar的背景颜色 setBarHeight 设置Bar的高度 setTitleColor...自定义弹出按钮提示 DIALOG_LOADING_PROGRASSBAR 默认加载弹框 DIALOG_CHOICE_ITEM 没有数据显示状态码 根据不同的构造函数设置不同的参数 (2)自定义Dialog...在指定控件底部显示弹框 showPopup 在屏幕中央显示弹框 showPopupAsDropDown 在指定控件底部显示弹框 setShowMaskView 设置是否显示遮层 dismiss 销毁弹出框...如果需要显示遮层,在构造函数通过setShowMaskView(true)设置。

    10110

    android的Drawable详解

    >//设置区域背景的渐变效果 //设置区域的背景颜色,如果设置了solid会覆盖gradient的效果 //设置区域的边框效果...:gravity="center" /> AnimationDrawable animationDrawable就是动画的,这个是按帧播放的那种。...使用起来也非常简单,在xml文件中使用animation-list作为根节点定义AnimationDrawable,使用item设置需要播放的每一帧使用的drawable资源,以及每一帧持续的时间即可。...之后需要主动调用AnimationDrawable的start播放动画,需要注意的是,当我们在Activity的oncreate方法中调用start方法时会没有任何效果,那是因为view还没有完成初始化...虽然有时候可能出现交错的情况,但是由于位于不同的层,显示上 也是不会有任何影响的。 <?xml version="1.0" encoding="utf-8"?

    86850
    领券