自定义view加载圆圈转圈效果

圆圈转圈效果的实现

public class LoadingView extends LinearLayout {public LoadingView(Context context) {this(context, null);}public LoadingView(Context context,  AttributeSet attrs) {this(context, attrs, 0);}public LoadingView(Context context,  AttributeSet attrs, int defStyleAttr) {super(context, attrs, defStyleAttr);setOrientation(VERTICAL);setGravity(Gravity.CENTER);setBackgroundResource(R.drawable.loadingsp);LoadView loading = new LoadView(getContext());loading.setLayoutParams(new ViewGroup.LayoutParams(200, 200));addView(loading);TextView tv = new TextView(getContext());tv.setText("正在加载中");LinearLayout.LayoutParams layoutParams = new LayoutParams(-2, -2);layoutParams.setMargins(0, 10, 0, 0);tv.setLayoutParams(layoutParams);tv.setGravity(Gravity.CENTER);tv.setTextColor(Color.WHITE);addView(tv);}class LoadView extends View {Paint mPaint;private int mWidth;private int mHeight;private int mCurrentIndex = 0;private int count = 12;public LoadView(Context context) {super(context);mPaint = new Paint();mPaint.setAntiAlias(true);mPaint.setStyle(Paint.Style.FILL);mPaint.setStrokeWidth(TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, 3, getResources().getDisplayMetrics()));mPaint.setColor(Color.WHITE);}@Overrideprotected void onDraw(Canvas canvas) {super.onDraw(canvas);if (mCurrentIndex >= count) {mCurrentIndex = 0;}int endAlpha = 255 / count;for (int i = 0; i < count; i++) {int alpha;if (mCurrentIndex - i > 0) {alpha = endAlpha * (mCurrentIndex - i);} else {alpha = 255 - 255 / count * (i - mCurrentIndex);}mPaint.setColor(Color.argb(alpha, 255, 255, 255));canvas.drawLine(mWidth / 2, 0, mWidth / 2, TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, 20, getResources().getDisplayMetrics()), mPaint);canvas.rotate(360 / count, mWidth / 2, mHeight / 2);}mCurrentIndex++;postInvalidateDelayed(100);}@Overrideprotected void onSizeChanged(int w, int h, int oldw, int oldh) {super.onSizeChanged(w, h, oldw, oldh);mWidth = getWidth();mHeight = getHeight();}}
}

效果
在这里插入图片描述
当然你也可以采用第三方开源框架

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

android酷炫转圈动画,Android 等待过程中的转圈动画

效果:(下面转圈的小圆圈) private CustomProgressDialog progressDialog; //实例化自定义CustomProgressDialog progressDialog = new CustomProgressDialog(context, R.style.progressDialog); //设置不可点击外边取消动画 progressDialog.setCanceledOnTouchOutside(false);…

超微浏览器 (uweb browser): 微、威、快、高效、极致优化

超微浏览器 (uweb browser): 微、威、快、高效、极致优化 Amazon appstore 下载 超微浏览器下载及使用技巧 (Mirrors: gitlab repo codeberg netlify stormkit surge github torapp epizy pages render bitbucket vercel) 国内可以直接使用bingChat/必应写作/chatgpt微&…

ChatGPT闲谈——火出圈的为什么是 OpenAI?

ChatGPT 走入大众视野之后&#xff0c;AIGC 行业迎来了爆发&#xff0c;尤其是上个月&#xff0c;仿佛每一天都可能是「历史性」的一天。 现在各大网站已经有非常多的优秀创作者进行总结和分析&#xff0c;都是值得一阅的好文。今天本文也分享了关于ChatGPT的看法&#xff0c;有…

华为版ChatGPT产品“盘古Chat”或将于7月初发布中链讯科web3mcn

中链讯科 web3mcn 中链讯科 成都老赵 中链讯科 dapp开发 中链讯科 区块链合规资管 captain嵇 中链讯科 web3基金会 四川中链讯科科技集团有限公司的成都老赵、captain嵇 等代表受邀参加了香港Web3嘉年华和币安、OKX、火币、币赢等一系列会议活动&#xff0c;共同探讨Web3…

Compilify Beta阶段事后分析

设想和目标 我们的软件要解决什么问题&#xff1f;是否定义得很清楚&#xff1f;是否对典型用户和典型场景有清晰的描述&#xff1f; 《编译技术》是计算机学院开设的一门核心专业课程。课程参与者为教师、助教和学生。我们的编译课程平台需要提供课程管理、用户管理、课程通知…

【HelloKitty团队项目】Alpha阶段事后分析

项目内容这个作业属于哪个课程2023北航软件工程这个作业的要求在哪里团队项目-Alpha阶段事后分析我在这个课程的目标是学习软件工程技术&#xff0c;完成团队开发流程这个作业在哪个具体方面帮助我实现目标Alpha阶段复盘总结 设想和目标 我们的软件要解决什么问题&#xff1f;…

【HelloKitty团队项目】Beta阶段反思

项目内容这个作业属于哪个课程2023北航软件工程这个作业的要求在哪里团队项目-Beta阶段反思我在这个课程的目标是学习软件工程技术&#xff0c;完成团队开发流程这个作业在哪个具体方面帮助我实现目标Beta阶段反思总结 一、设想和目标 我们的软件要解决什么问题&#xff1f;是…

GISer 使用ChatGPT的姿势

ChatGPT是由OpenAI开发的一个人工智能聊天机器人程序&#xff0c;于2022年11月推出。该程序使用基于GPT-3.5架构的大型语言模型并通过强化学习进行训练。 作为GIS相关的工作者&#xff0c;我们在日常工作中该怎么使用chatgpt来提高我们的工作效率呢&#xff1f;接下来&#xff…

Lazada卖家上传产品实操,采采Lazada上货铺货助手,一键采集刊登上架,批量上品删除宝贝上下架更改产品属性,自动翻译,图片文字翻译

Lazada商品上传并不复杂&#xff0c;但是发布产品费时费力&#xff0c;并且经常容易出错。无论是卖家后台的单个上传还是使用csv方式批量上传&#xff0c;都是比较繁琐的工作&#xff0c;而且效率低下。那是否有比较快捷的采集方法了&#xff1f; 有兴趣的朋友可以了解下采采L…

商品上架-功能实现(1)

1.接口文档 2.SpuInfoController中添加spuUp方法 /*** 商品上架* param spuId* return*/PostMapping("/{spuId}/up")public R spuUp(PathVariable("spuId") Long spuId) {spuInfoService.up(spuId);return R.ok();}3.SpuInfoService中添加up方法 void up(L…

【虾皮shopee来赞达lazada】各区域商品详情API接口返回值说明

虾皮shopee电商数据&#xff08;来赞达lazada同理&#xff09; 虾皮(shopee)是一个亚洲区域的电商平台&#xff0c;主要在东南亚地区提供电商服务。虾皮提供了丰富的电商数据&#xff0c;包括商品数据、订单数据、会员数据、评价数据等。以下是具体的介绍&#xff1a; 商品数据…

虾皮Shopee商品详情接口(item_get-根据ID取商品详情)代码封装

item_get-根据ID取商品详情接口 通过代码封装该接口可以拿到商品标题&#xff0c;商品价格&#xff0c;商品促销信息&#xff0c;商品优惠价&#xff0c;商品库存&#xff0c;sku属性&#xff0c;商品图片&#xff0c;desc图片&#xff0c;desc描述&#xff0c;sku图片&#xf…

taobao.item.update.listing( 一口价商品上架 )

&#xffe5;开放平台基础API必须用户授权 单个商品上架输入的num_iid必须属于当前会话用户 公共参数 请求地址: HTTP地址 http://gw.api.taobao.com/router/rest 公共请求参数: 请求参数 响应参数 点击获取key和secret 请求示例 TaobaoClient client new DefaultTaobaoCl…

【教程】获取实时反诈最新动态/案例

转载请注明出处&#xff1a;小锋学长生活大爆炸[xfxuezhang.blog.csdn.net] 请勿用于非法用途&#xff01; 目录 宣传页链接 第一页帖子链接 其他页面链接 示例使用代码 想搜集会动态更新的诈骗案例&#xff0c;用于做反诈宣传脚本&#xff0c;但网上都是诈骗静态帖子&…

chatgpt赋能python:Python自动绘制轨迹:实现快速轨迹可视化的最佳工具

Python自动绘制轨迹&#xff1a;实现快速轨迹可视化的最佳工具 随着科技的不断发展&#xff0c;数据变得越来越庞大。数据处理、分析的时效性成为了一个非常重要的话题&#xff0c;而自动化技术也因此应运而生。Python作为一种高效且功能丰富的编程语言&#xff0c;可以实现许…

大神李沐、快手元老李岩被曝离职后转投大模型,ChatGPT掀起AI创业狂飙

点击上方“AI遇见机器学习”&#xff0c;选择“星标”公众号 重磅干货&#xff0c;第一时间送 来自&#xff1a;新智元 编辑&#xff1a;编辑部 【导读】在B站讲论文的李沐大神被曝出从亚马逊离职&#xff0c;与导师一同投身大模型创业。无独有偶&#xff0c;快手前AI核心人物李…

我和 chatGPT 对线操作系统!

大家都知道现在 chatGPT 已经在多个领域展现了及其强大的工地&#xff0c;比如文案策划&#xff0c;毕业论文方便&#xff0c;甚至很多程序员都直接让 chatGPT 帮忙写代码了&#xff0c;在一些模板化的代码方面&#xff0c;chatGPT 更展示了优秀的能力。 所以我突然迸发了一个…

AI绘图实战(九):给热门歌曲做配图 | Stable Diffusion成为设计师生产力工具

S&#xff1a;AI能取代设计师么&#xff1f; I &#xff1a;至少在设计行业&#xff0c;目前AI扮演的主要角色还是超级工具&#xff0c;要顶替&#xff1f;除非甲方对设计效果无所畏惧~~ 预先学习&#xff1a; 安装及其问题解决参考&#xff1a;《Windows安装Stable Diffusion …

QT 借助 图表 实现音频频谱的绘制

1.前言 因为项目需要&#xff0c;要将音频播放并且实时展现其频谱图。项目中需要解析频谱数据&#xff0c;涉及到相关算法问题。所以博主没有采用网络上QT用QPainter库绘制频谱&#xff0c;而是采用了QChart来绘制频谱。 2.效果展示 如图&#xff0c;红线为实时播放的位置&…

微软小冰主要框架和流程及相关技术

主要是看了知乎上面一位作者写的解析&#xff0c;然后自己在看的过程中顺带记录一下&#xff0c;流程差不多&#xff0c;自己写的话复习比较直观快速 1、Query是用户输入的问题 2、DM&#xff08;对话管理模块&#xff09;层&#xff1a; 这一模块分为&#xff1a;状态追踪&…