android 指针动画转动

news2024/12/29 10:46:47

记录一种简单动画 

效果图: 

都是直接使用图片资源FrameLayout布局实现,布局如下:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    >

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginStart="22dp"
        android:layout_marginTop="16dp"
        android:text="Manager"
        android:textColor="#010101"
        android:textSize="22sp" />

    <FrameLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        >

        <FrameLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginHorizontal="22dp">

            <ImageView
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:scaleType="fitXY"
               />

            <ImageView
                android:layout_width="274dp"
                android:layout_height="137dp"
                android:layout_marginTop="34dp"

                android:layout_gravity="center_horizontal"

                android:scaleType="fitXY"
                android:src="@drawable/img_storage" />
            <LinearLayout
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:orientation="vertical"
                android:layout_marginTop="80sp"
                android:layout_gravity="center_horizontal"
                >
            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:textColor="@color/color_db3"
                android:layout_gravity="center_horizontal"
                android:textSize="16sp" android:textStyle="bold"
                android:text="Storage"
                />
                <LinearLayout
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_gravity="center_horizontal"
                    android:orientation="horizontal">
                <TextView
                    android:id="@+id/tv_percentage"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:textColor="@color/color_545"
                    android:layout_gravity="center_horizontal"
                    android:textSize="44dp"
                    android:text="0"
                    android:textStyle="bold"
                    />
                    <TextView
                        android:layout_width="wrap_content"
                        android:layout_height="32dp"
                        android:text="%"
                        android:textColor="#ff914545"
                        android:layout_gravity="center_vertical"
                        android:textSize="28sp"
                        />
                </LinearLayout>
                <TextView
                    android:id="@+id/tv_storage"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:textColor="@color/color_545"
                    android:layout_gravity="center_horizontal"
                    android:textSize="14sp"
                    android:text="99.1/108GB" />
            </LinearLayout>

            <ImageView
                android:id="@+id/iv_position"
                android:layout_width="262dp"
                android:layout_height="262dp"
                android:layout_gravity="center_horizontal"
                android:layout_marginTop="40dp"
                android:scaleType="fitXY"
                android:src="@drawable/img_storage_icon" />


        </FrameLayout>

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginTop="200dp"
            android:orientation="vertical">

            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_marginStart="24dp"
                android:layout_marginTop="24dp"
                android:layout_marginBottom="16dp"
                android:text="Manager"
                android:textColor="@android:color/white"
                android:textSize="16sp"
                android:visibility="gone"
                android:textStyle="bold" />

            <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_marginTop="40dp"
                android:orientation="horizontal">
                <LinearLayout
                    android:id="@+id/cardDocement"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"

                    android:tag="0"

                    app:cardCornerRadius="16dp"
                    android:layout_weight="1">

                    <LinearLayout
                        android:layout_width="match_parent"
                        android:layout_height="match_parent"
                        android:layout_gravity="center"
                        android:gravity="center_horizontal"
                        android:orientation="vertical">

                        <RelativeLayout
                            android:layout_width="78dp"
                            android:layout_height="78dp"

                            >

                            <ImageView
                                android:layout_width="wrap_content"
                                android:layout_height="wrap_content"
                                android:layout_centerInParent="true"
                                android:src="@drawable/img_document" />

                        </RelativeLayout>

                        <LinearLayout
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:layout_marginTop="14dp"
                            android:orientation="vertical">

                            <TextView
                                android:layout_width="wrap_content"
                                android:layout_height="wrap_content"
                                android:text="Doceumen"
                                android:textColor="#333333"
                                android:textSize="14sp"
                                android:textStyle="bold" />

                            <TextView

                                android:layout_width="wrap_content"
                                android:layout_height="wrap_content"
                                android:layout_marginTop="8dp"
                                android:textColor="#999999"
                                android:textSize="14sp"
                                android:visibility="gone"
                                tools:text="Size: 22MB" />

                        </LinearLayout>

                    </LinearLayout>

                </LinearLayout>
                <LinearLayout
                    android:id="@+id/cardPhoto"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"

                    android:tag="0"

                    app:cardCornerRadius="16dp"
                    android:layout_weight="1">

                    <LinearLayout
                        android:layout_width="match_parent"
                        android:layout_height="match_parent"
                        android:layout_gravity="center"
                        android:gravity="center_horizontal"
                        android:orientation="vertical">

                        <RelativeLayout
                            android:layout_width="78dp"
                            android:layout_height="78dp"

                            >

                            <ImageView
                                android:layout_width="wrap_content"
                                android:layout_height="wrap_content"
                                android:layout_centerInParent="true"
                                android:src="@drawable/img_photo" />

                        </RelativeLayout>

                        <LinearLayout
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:layout_marginTop="14dp"
                            android:orientation="vertical">

                            <TextView
                                android:layout_width="wrap_content"
                                android:layout_height="wrap_content"
                                android:text="Photos"
                                android:textColor="#333333"
                                android:textSize="14sp"
                                android:textStyle="bold" />

                            <TextView
                                android:id="@+id/tv_photo"
                                android:layout_width="wrap_content"
                                android:layout_height="wrap_content"
                                android:layout_marginTop="8dp"
                                android:textColor="#999999"
                                android:textSize="14sp"
                                android:visibility="gone"
                                tools:text="Size: 22MB" />

                        </LinearLayout>

                    </LinearLayout>

                </LinearLayout>

                <LinearLayout
                    android:id="@+id/cardVideo"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:tag="1"
                    app:cardBackgroundColor="@android:color/white"
                    app:cardCornerRadius="16dp"
                    android:layout_weight="1">

                    <LinearLayout
                        android:layout_width="match_parent"
                        android:layout_height="match_parent"
                        android:gravity="center_horizontal"
                        android:orientation="vertical"
                        android:tag="1">

                        <RelativeLayout
                            android:layout_width="78dp"
                            android:layout_height="78dp"

                            >

                            <ImageView
                                android:layout_width="wrap_content"
                                android:layout_height="wrap_content"
                                android:layout_centerInParent="true"
                                android:src="@drawable/img_video" />

                        </RelativeLayout>

                        <LinearLayout
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:layout_marginTop="14dp"
                            android:orientation="vertical">

                            <TextView
                                android:layout_width="wrap_content"
                                android:layout_height="wrap_content"
                                android:text="Video"
                                android:textColor="#333333"
                                android:textSize="14sp"
                                android:textStyle="bold" />

                            <TextView
                                android:id="@+id/tv_video"
                                android:layout_width="wrap_content"
                                android:layout_height="wrap_content"
                                android:layout_marginTop="8dp"
                                android:textColor="#999999"
                                android:textSize="14sp"
                                android:visibility="gone"
                                tools:text="Size: 22MB" />

                        </LinearLayout>

                    </LinearLayout>

                </LinearLayout>>

                <LinearLayout
                    android:id="@+id/cardMusic"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:visibility="gone"
                    android:tag="2"
                    app:cardBackgroundColor="@android:color/white"

                    android:layout_weight="1">

                    <LinearLayout
                        android:layout_width="match_parent"
                        android:layout_height="match_parent"

                        android:gravity="center_horizontal"
                        android:orientation="vertical"
                        android:tag="1">

                        <RelativeLayout
                            android:layout_width="60dp"
                            android:layout_height="60dp"

                            android:background="@drawable/card_ffda65_r16">

                            <ImageView
                                android:layout_width="wrap_content"
                                android:layout_height="wrap_content"
                                android:layout_centerInParent="true"
                                android:src="@drawable/icon_music" />

                        </RelativeLayout>

                        <LinearLayout
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:layout_marginTop="14dp"
                            android:orientation="vertical">

                            <TextView
                                android:layout_width="wrap_content"
                                android:layout_height="wrap_content"
                                android:text="Music"
                                android:textColor="#333333"
                                android:textSize="14sp"
                                android:textStyle="bold" />

                            <TextView
                                android:id="@+id/tv_music"
                                android:layout_width="wrap_content"
                                android:layout_height="wrap_content"
                                android:layout_marginTop="8dp"
                                android:textColor="#999999"
                                android:textSize="14sp"
                                tools:text="Size: 22MB"
                                android:visibility="gone"/>

                        </LinearLayout>

                    </LinearLayout>

                </LinearLayout>
            </LinearLayout>
            <LinearLayout      android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:orientation="horizontal"
                android:layout_marginTop="32dp">
                <LinearLayout
                    android:id="@+id/cardApk"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:layout_marginHorizontal="1dp"

                    android:tag="3"

                    app:cardCornerRadius="16dp"
                    android:layout_weight="1" >

                    <LinearLayout
                        android:layout_width="match_parent"
                        android:layout_height="match_parent"
                        android:gravity="center_horizontal"
                        android:orientation="vertical"
                        android:tag="1">

                        <RelativeLayout
                            android:layout_width="78dp"
                            android:layout_height="78dp"

                            >

                            <ImageView
                                android:layout_width="wrap_content"
                                android:layout_height="wrap_content"
                                android:layout_centerInParent="true"
                                android:src="@drawable/img_apks" />

                        </RelativeLayout>

                        <LinearLayout
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:orientation="vertical"
                            android:layout_marginTop="14dp">

                            <TextView
                                android:layout_width="wrap_content"
                                android:layout_height="wrap_content"
                                android:text="APKs"
                                android:textColor="#333333"
                                android:textSize="14sp"
                                android:textStyle="bold" />

                            <TextView
                                android:id="@+id/tv_apk"
                                android:layout_width="wrap_content"
                                android:layout_height="wrap_content"
                                android:layout_marginTop="8dp"
                                android:textColor="#999999"
                                android:textSize="14sp"
                                tools:text="Size: 22MB"
                                android:visibility="gone"/>

                        </LinearLayout>

                    </LinearLayout>

                </LinearLayout>

                <LinearLayout
                    android:id="@+id/cardBigFile"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:layout_marginHorizontal="1dp"
                    android:tag="4"
                    app:cardBackgroundColor="@android:color/white"
                    app:cardCornerRadius="16dp"
                    android:layout_weight="1">

                    <LinearLayout
                        android:layout_width="match_parent"
                        android:layout_height="match_parent"
                        android:gravity="center_horizontal"
                        android:orientation="vertical"
                        android:tag="1">

                        <RelativeLayout
                            android:layout_width="78dp"
                            android:layout_height="78dp"

                            >

                            <ImageView
                                android:layout_width="wrap_content"
                                android:layout_height="wrap_content"
                                android:layout_centerHorizontal="true"
                                android:src="@drawable/img_bigfiles" />

                        </RelativeLayout>

                        <LinearLayout
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:orientation="vertical"
                            android:layout_marginTop="14dp">

                            <TextView
                                android:layout_width="wrap_content"
                                android:layout_height="wrap_content"
                                android:text="Big Files"
                                android:textColor="#333333"
                                android:textSize="14sp"
                                android:textStyle="bold" />

                            <TextView
                                android:id="@+id/tv_bigFile"
                                android:layout_width="wrap_content"
                                android:layout_height="wrap_content"
                                android:layout_marginTop="8dp"
                                android:textColor="#999999"
                                android:textSize="14sp"
                                android:visibility="gone"
                                tools:text="Size: 22MB" />

                        </LinearLayout>

                    </LinearLayout>

                </LinearLayout>

                <LinearLayout
                    android:id="@+id/cardRecentFile"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:layout_marginHorizontal="1dp"
                    android:tag="4"
                    app:cardBackgroundColor="@android:color/white"
                    app:cardCornerRadius="16dp"
                    android:layout_weight="1">

                    <LinearLayout
                        android:layout_width="match_parent"
                        android:layout_height="match_parent"
                        android:gravity="center_horizontal"
                        android:orientation="vertical"
                        android:tag="1">

                        <RelativeLayout
                            android:layout_width="78dp"
                            android:layout_height="78dp">

                            <ImageView
                                android:layout_width="wrap_content"
                                android:layout_height="wrap_content"
                                android:layout_centerHorizontal="true"
                                android:src="@drawable/img_recentfiles" />

                        </RelativeLayout>

                        <LinearLayout
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:orientation="vertical"
                            android:layout_marginTop="14dp">

                            <TextView
                                android:layout_width="wrap_content"
                                android:layout_height="wrap_content"
                                android:text="Recent Files"
                                android:textColor="#333333"
                                android:textSize="14sp"
                                android:textStyle="bold" />

                            <TextView

                                android:layout_width="wrap_content"
                                android:layout_height="wrap_content"
                                android:layout_marginTop="8dp"
                                android:textColor="#999999"
                                android:textSize="14sp"
                                android:visibility="gone"
                                tools:text="Size: 22MB" />

                        </LinearLayout>

                    </LinearLayout>

                </LinearLayout>
            </LinearLayout>


        </LinearLayout>

    </FrameLayout>

</LinearLayout>

Activity中动画代码 

private void loadIngData(double loading) {
        double loadingnum=loading*1.8;//进度值*角度比
        ObjectAnimator animator = ObjectAnimator.ofFloat(mImagStorageView, "rotation", (float) loadingnum);
        animator.setDuration(1000);
        animator.start();

    }

                                                                           -END

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1116616.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Android13 实现有线网络和wifi共存

Android13 实现有线网络和wifi共存 文章目录 Android13 实现有线网络和wifi共存一、前言二、修改代码&#xff1a;1、ConnectivityService.java2、NetworkFactoryImpl.java3、Android11 和Android13 修改代码目录对比&#xff1a;4、如果只修改部分代码的后果只修改 Connectivi…

短视频矩阵系统源码---开发

一、智能剪辑、矩阵分发、无人直播、爆款文案于一体独立应用开发 抖去推----主要针对本地生活的----移动端(小程序软件系统&#xff0c;目前是全国源头独立开发)&#xff0c;开发功能大拆解分享&#xff0c;功能大拆解&#xff1a; 7大模型剪辑法&#xff08;数学阶乘&#x…

图的匹配相关学习笔记

二分图最大匹配 二分图是一种奇妙的图&#xff0c;它满足可以把其内部的节点划分成两个集合&#xff0c;且这每个集合内部的的点没有边相连。 二分图的判定 二分图的判定定理&#xff1a;一张无向图是二分图&#xff0c;当且仅当图中不存在奇环&#xff08;长度为奇数的环&am…

VisualStudio安装VSIX离线包的方法

一、安装的原理 1、使用的window工具&#xff1a;CMD或者powerShell 2、vs中用于安装vsix的exe&#xff1a; 二、安装过程 1、在VSIXInstaller.exe同级目录启动PowerShell &#xff08;1&#xff09;鼠标移到空白处 &#xff08;2&#xff09;Shift 鼠标右键 &#xff08;…

物联网_00_物理网介绍

1.物联网为什么会出现? 一句话-----追求更高品质的生活, 随着科技大爆炸, 人类当然会越来越追求衣来伸手饭来张口的懒惰高品质生活, 最早的物联网设备可以追溯到19世纪末的"在线可乐售卖机"和"特洛伊咖啡壶"(懒惰的技术人员为了能够实时看到物品的情况而设…

BAT032:批量替换当前目录下文件的部分字符

引严&#xff1a;编写批处理程序&#xff0c;实现批量替换当前目录下文件的部分字符。 一、新建Windows批处理文件 参考博客&#xff1a; CSDNhttps://mp.csdn.net/mp_blog/creation/editor/132137544 二、写入批处理代码 1.右键新建的批处理文件&#xff0c;点击【编辑】。…

飞速(FS)MTP®光纤跳线系列——数据中心布线理想选择

数据中心的重要定位要求其使用的光纤跳线具有高性能和高可靠性。飞速&#xff08;FS&#xff09;MTP光纤产品系列能够以简单的安装方式快速部署高密度链路&#xff0c;优化线缆管理&#xff0c;确保充分利用通道空间&#xff0c;显著减少安装时间和成本。 飞速&#xff08;FS&…

线性代数-Python-02:矩阵的基本运算 - 手写Matrix及numpy中的用法

文章目录 一、代码仓库二、矩阵的基本运算2.1 矩阵的加法2.2 矩阵的数量乘法2.3 矩阵和向量的乘法2.4 矩阵和矩阵的乘法2.5 矩阵的转置 三、手写Matrix代码Matrix.pymain_matrix.pymain_numpy_matrix.py 一、代码仓库 https://github.com/Chufeng-Jiang/Python-Linear-Algebra-…

uni-app:实现时钟自走(动态时钟效果)

效果 核心代码 使用钩子函数 mounted()&#xff0c;设置定时器&#xff0c;是指每秒都要去执行时间的获取&#xff0c;以至于实现时间自走的效果 mounted() { this.updateTime(); // 初始化时间 setInterval(this.updateTime, 1000); // 每秒更新时间 }, 自定义方法…

2022年亚太杯APMCM数学建模大赛E题有多少核弹可以摧毁地球求解全过程文档及程序

2022年亚太杯APMCM数学建模大赛 E题 有多少核弹可以摧毁地球 原题再现 1945年8月6日&#xff0c;第二次世界大战即将结束。为了尽快结束战争&#xff0c;美国在日本广岛投下了下一颗名为“小男孩”的原子弹。这样一颗原子弹在广岛炸死了20万人&#xff0c;广岛的所有建筑物都…

BAT033:批量删除文件特定字符及特定字符之后的字符

引言&#xff1a;编写批处理程序&#xff0c;实现批量删除文件特定字符及特定字符之后的字符。 一、新建Windows批处理文件 参考博客&#xff1a; CSDNhttps://mp.csdn.net/mp_blog/creation/editor/132137544 二、写入批处理代码 1.右键新建的批处理文件&#xff0c;点击【…

【计算机网络】OSI参考模型中非端-端层(物理层、数据链路层、网络层)功能介绍

系列文章目录 什么是计算机网络&#xff1f; 什么是网络协议&#xff1f; 计算机网络的结构 数据交换之电路交换 数据交换之报文交换和分组交换 分组交换 vs 电路交换 计算机网络性能&#xff08;1&#xff09;——速率、带宽、延迟 计算机网络性能&#xff08;2&#xff09;…

表示本机IP地址的方式(三种方式)

1、本机和网络上的其他主机都可以通过IP地址访问到服务器 2、通过 127.0.0.1 或者 localhost 访问 127.0.0.1 和 localhost 它们完全等价 只能 本机 通过 127.0.0.1 或者 localhost 访问&#xff0c;网络上的其他主机无法访问 3、 通过 0.0.0.0 访问服务器 表示所有可…

Element Plus el-form表单自定义插槽如何使用

//正常无插槽表单<el-form :model"form" label-width"120px"><el-form-item label"Activity name"><el-input v-model"form.name" /></el-form-item></el-form>//带插槽表单//适用二次封装的form组件&l…

计算机网络篇之TCP滑动窗口

文章目录 前言概述 前言 在网络数据传输时&#xff0c;若传输的原始数据包比较大&#xff0c;会将数据包分解成多个数据包进行发送。需要对数据包确认后&#xff0c;才能发送下一个数据包。在等待确认包的这个过程浪费了大量的时间&#xff0c;不过还好TCP引入了滑动窗口的概念…

如何开发一个 Safari 插件

本文字数&#xff1a;2493字 预计阅读时间&#xff1a;15分钟 由于常用浏览器是Safari&#xff0c;而Safari浏览器的插件比不上Chrome&#xff0c;所以就有了自己开发常用的Safari插件的想法。 打算开发当前页面生成二维码的Extension&#xff0c;因为网络原因&#xff0c;AirD…

微软正式发布开源应用平台 Radius平台

“ 10 月 18 日&#xff0c;微软 Azure 孵化团队正式发布开源应用平台 Radius&#xff0c;该平台将应用程序置于每个开发阶段的中心&#xff0c;重新定义应用程序的构建、管理与理解方式。” 简单的概括就是&#xff0c;它和Kubernetes不一样&#xff0c;Radius将应用程序放在每…

DevExpress WPF Pivot Grid组件,可轻松实现多维数据分析!(二)

在上文中&#xff08;点击这里回顾>>&#xff09;我们主要为大家介绍了DevExpress WPF Pivot Grid组件的超快速枢轴分析功能、Microsoft分析服务等&#xff0c;本文将继续介绍图表透视数据的处理、MVVM支持等。欢迎持续关注我们&#xff0c;探索更多新功能哦~ P.S&#…

LNMP架构部署Discuz论坛系统

文章目录 LNMP架构&部署Discuz论坛系统部署LNMP架构环境前期准备安装Nginx安装mariadb安装php配置nginx 部署Discuz论坛系统下载Discuz论坛系统代码包部署Discuz论坛系统配置虚拟主机安装Discuz论坛访问站点尝试注册一个账号 LNMP架构&部署Discuz论坛系统 部署LNMP架构…

R语言:主成分分析PCA

文章目录 主成分分析处理步骤数据集code 主成分分析 主成分分析&#xff08;或称主分量分析&#xff0c;principal component analysis&#xff09;由皮尔逊&#xff08;Pearson,1901&#xff09;首先引入&#xff0c;后来被霍特林&#xff08;Hotelling,1933&#xff09;发展…