电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術文章
文章詳情頁

Android結合xml實現幀動畫

瀏覽:40日期:2022-09-18 15:07:08
目錄1 創建 xml 動畫文件2 加載使用3 聊一聊 AnimationDrawable3.1 使用 ViewTreeObserver3.2 使用 RunAnim3.3 在 Activity 的 onWindowFocusChanged 中調用1 創建 xml 動畫文件

在 Android 項目工程中的 drawable 目錄下創建動畫文件,如我這里創建的 loading.xml

Android結合xml實現幀動畫

<?xml version='1.0' encoding='utf-8'?><animation-list xmlns:android='http://schemas.android.com/apk/res/android'android:oneshot='false'> <itemandroid:drawable='@mipmap/ani_1'android:duration='800' /> <itemandroid:drawable='@mipmap/ani_2'android:duration='800' /> <itemandroid:drawable='@mipmap/ani_3'android:duration='800' /> <itemandroid:drawable='@mipmap/ani_4'android:duration='800' /> <itemandroid:drawable='@mipmap/ani_5'android:duration='800' /> <itemandroid:drawable='@mipmap/ani_6'android:duration='800' /> <itemandroid:drawable='@mipmap/ani_7'android:duration='800' /> <itemandroid:drawable='@mipmap/ani_8'android:duration='800' /></animation-list>

設置android:oneshot屬性為true,表示此次動畫只執行一次,最后停留在最后一幀。設置為false則動畫循環播放。文件可以添加為Image背景,觸發的時候播放。

2 加載使用

在你的 Activity 中,直接將這個動畫文件使用一個 ImageView 來加載顯示,代碼如下:

public class MainActivity extends AppCompatActivity {@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);ImageView lImageView = findViewById(R.id.imageview);//設置圖片lImageView.setImageResource(R.drawable.loading);//動AnimationDrawable lAnimationDrawable = (AnimationDrawable) lImageView.getDrawable();lAnimationDrawable.start();}}3 聊一聊 AnimationDrawable

Drawable animation可以加載Drawable資源實現幀動畫。AnimationDrawable是實現Drawable animations的基本類

有時 調用了 AnimationDrawable.start方法來啟動動畫,但是并沒有出現效果。

3.1 使用 ViewTreeObserver

ViewTreeObserver.OnPreDrawListener lOnPreDrawListener=new ViewTreeObserver.OnPreDrawListener(){@Overridepublic boolean onPreDraw() {lAnimationDrawable.start();return true; //注意此行返回的值}};//綁定視圖觀察者lImageView.getViewTreeObserver().addOnPreDrawListener(lOnPreDrawListener);3.2 使用 RunAnim

public class MainActivity extends AppCompatActivity {@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);start3();}private AnimationDrawable mAnimationDrawable;public void start3() {ImageView lImageView = findViewById(R.id.imageview);//設置圖片lImageView.setImageResource(R.drawable.loading);//動mAnimationDrawable = (AnimationDrawable) lImageView.getDrawable();RunAnim runAnim = new RunAnim();runAnim.execute('');}class RunAnim extends AsyncTask<String, String, String> {@Overrideprotected String doInBackground(String... params) {if (!mAnimationDrawable.isRunning()) {mAnimationDrawable.stop();mAnimationDrawable.start();}return '';}}}3.3 在 Activity 的 onWindowFocusChanged 中調用

@Overridepublic void onWindowFocusChanged(boolean hasFocus){mAnimationDrawable.start();super.onWindowFocusChanged(hasFocus);}

完畢

源碼在這里

以上就是Android結合xml實現幀動畫的詳細內容,更多關于Android 實現幀動畫的資料請關注好吧啦網其它相關文章!

標簽: Android
相關文章:
主站蜘蛛池模板: 烟台游艇培训,威海游艇培训-烟台市邮轮游艇行业协会 | 长沙网站建设制作「网站优化推广」-网页设计公司-速马科技官网 | 卡诺亚轻高定官网_卧室系统_整家定制_定制家居_高端定制_全屋定制加盟_定制家具加盟_定制衣柜加盟 | 污水处理设备维修_污水处理工程改造_机械格栅_过滤设备_气浮设备_刮吸泥机_污泥浓缩罐_污水处理设备_污水处理工程-北京龙泉新禹科技有限公司 | 博莱特空压机|博莱特-阿特拉斯独资空压机品牌核心代理商 | 存包柜厂家_电子存包柜_超市存包柜_超市电子存包柜_自动存包柜-洛阳中星 | 菏泽知彼网络科技有限公司| 生物风-销售载体,基因,质粒,ATCC细胞,ATCC菌株等,欢迎购买-百风生物 | 工业洗衣机_工业洗涤设备_上海力净工业洗衣机厂家-洗涤设备首页 bkzzy在职研究生网 - 在职研究生招生信息咨询平台 | 无压烧结银_有压烧结银_导电银胶_导电油墨_导电胶-善仁(浙江)新材料 | 开锐教育-学历提升-职称评定-职业资格培训-积分入户 | 吉林污水处理公司,长春工业污水处理设备,净水设备-长春易洁环保科技有限公司 | 电主轴,车床电磨头,变频制动电机-博山鸿达特种电机 | 超声波焊接机,振动摩擦焊接机,激光塑料焊接机,超声波焊接模具工装-德召尼克(常州)焊接科技有限公司 | 电磁流量计_智能防腐防爆管道式计量表-金湖凯铭仪表有限公司 | 细沙回收机-尾矿干排脱水筛设备-泥石分离机-建筑垃圾分拣机厂家-青州冠诚重工机械有限公司 | 派克防爆伺服电机品牌|国产防爆伺服电机|高低温伺服电机|杭州摩森机电科技有限公司 | 科客,主见不成见| 珠海白蚁防治_珠海灭鼠_珠海杀虫灭鼠_珠海灭蟑螂_珠海酒店消杀_珠海工厂杀虫灭鼠_立净虫控防治服务有限公司 | 北京软件开发_软件开发公司_北京软件公司-北京宜天信达软件开发公司 | 体感VRAR全息沉浸式3D投影多媒体展厅展会游戏互动-万展互动 | 电镀标牌_电铸标牌_金属标贴_不锈钢标牌厂家_深圳市宝利丰精密科技有限公司 | 离子色谱自动进样器-青岛艾力析实验科技有限公司 | 盐城网络公司_盐城网站优化_盐城网站建设_盐城市启晨网络科技有限公司 | 成都软件开发_OA|ERP|CRM|管理系统定制开发_成都码邻蜀科技 | 杭州可当科技有限公司—流量卡_随身WiFi_AI摄像头一站式解决方案 | 贵阳用友软件,贵州财务软件,贵阳ERP软件_贵州优智信息技术有限公司 | 丹佛斯压力传感器,WISE温度传感器,WISE压力开关,丹佛斯温度开关-上海力笙工业设备有限公司 | 交通信号灯生产厂家_红绿灯厂家_电子警察监控杆_标志杆厂家-沃霖电子科技 | 浙江筋膜枪-按摩仪厂家-制造商-肩颈按摩仪哪家好-温州市合喜电子科技有限公司 | CTAB,表面活性剂1631溴型(十六烷基三甲基溴化铵)-上海升纬化工原料有限公司 | 混合气体腐蚀试验箱_盐雾/硫化氢/气体腐蚀试验箱厂家-北京中科博达 | 无压烧结银_有压烧结银_导电银胶_导电油墨_导电胶-善仁(浙江)新材料 | 家德利门业,家居安全门,别墅大门 - 安徽家德利门业有限公司 | 超声骨密度仪-动脉硬化检测仪器-人体成分分析仪厂家/品牌/价格_南京科力悦 | 紧急切断阀_气动切断阀_不锈钢阀门_截止阀_球阀_蝶阀_闸阀-上海上兆阀门制造有限公司 | 跨境物流_美国卡派_中大件运输_尾程派送_海外仓一件代发 - 广州环至美供应链平台 | Pos机办理_个人商户免费POS机申请-拉卡拉办理网 | 欧盟ce检测认证_reach检测报告_第三方检测中心-深圳市威腾检验技术有限公司 | 气动隔膜泵-电动隔膜泵-循环热水泵-液下排污/螺杆/管道/化工泵「厂家」浙江绿邦 | PCB设计,PCB抄板,电路板打样,PCBA加工-深圳市宏力捷电子有限公司 |