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

Android实用View:仿微信支付密码输入框

,同时记录自己工作中遇到的问题及解决办法。...3 分析已有作品 看到这样的效果相信很多开发者第一反应就是先网上搜一下看看有没有现成的(哈哈,我也不例外哦),因为这都是简单的一些view不涉及动画所以网上相关例子还是很多的,我这边总结了一下大致可以分为一下几类...绘制外边框: 要想绘制边框我们首先要知道view的宽高,通过onSizeChanged方法去初始化宽高等数据,然后绘制圆角矩形(默认让他矩形显示直接传入圆角半径为0即可) ? ? 2....绘制密码之间的分割线: 既然是分割线肯定是等均分的,假设我们的密码最大输入maxCount=6,那么我们只需画5个分割线就可以了,分割线坐标的计算 ? 计算分割线的起点和终点的坐标 ?...文章到此本应该结束了,可是我们UI设计师给出的效果不是这样子的,不按常理出牌(心中顿时飘过一万只草泥马) ? 来看看我们的效果 ? ?

1.7K20

Android GradientDrawable(shape标签定义) 静态使用和动态使用(圆角,渐变实现)

GradientDrawable的静态使用(xml中使用shape标签定义)   在drawable中创建一个xml文件,在布局文件中直接引用这个xml文件即可 <?...android:centerX 整型 渐变中心X点坐标的相对位置 android:centerY 整型 渐变中心Y点坐标的相对位置 -->...View view = null; // 这个view是你需要设置背景的view int strokeWidth = 1; // 1dp 边框宽度 int roundRadius = 5;...// 5dp 圆角半径 int strokeColor = Color.parseColor("#FFFF0000");//边框颜色 int fillColor = Color.parseColor...动态改变GradientDrawable的属性   既然GradientDrawable都能动态创建,那么肯定能过动态修改,我们可以通过先获取view上设置的background drawable

3.4K90
您找到你想要的搜索结果了吗?
是的
没有找到

自定义角标库

前言 角标的需求在app是经常需要用到的,比如未读通知/信息等,一般,我们可以通过嵌套相对布局的方式来设置角标,但是除了TextView,可能Button,ImageView等也需要,那只能写多次这类布局了...,而且角标的位置,颜色,形状的多变,自然而然,我们就需要把这些类似的需求归纳后,做出一个通用大部分情况的自定义View.今天给大家介绍我自己定义的角标库和基本构思过程....角标支持(左 上 右 下 左上 左下 右上 右下)八个方向,支持在xml或java代码控制角标背景颜色和半径,角标文字的颜色和大小, 环绕间隔的大小,角标的形状(圆形,矩形,圆角矩形...ttv_color——————角标颜色 ttv_outer_color———角标外环(边框)颜色 ttv_radius —————角标半径 ttv_outer_stroke ——角标外环(边框...(2)环绕方式: a.固定模式,角标会显示在View的固定位置,和View的宽高有关,不会随文本在View中的位置的改变改变: ?

1.9K70

三种 Loading 制作方案

所以我们可以通过控制元素边框和内容区的大小,将元素的内容区域作为内圆,将元素的边框区域作为外圆,从而绘制出一个圆环。...而viewBox表示的是截取图形的区域,因为矢量的绘制区域可以是无限大的,具体绘制在哪里根据具体的设置而定,比如上面的circle就绘制在圆心坐标为(25,25),半径为20的圆形区域中,而viewBox...设置为0 0 50 50,表示截图区域为左上角坐标为(0, 0),右下角坐标为(50,50)的矩形区域内,即会截取这个区域内的矢量,然后将截取的矢量放到svg的可显示区域内,同时会根据svg可显示区域的大小等比例进行缩放...为了给圆环添加转动效果,我们需要绘制带缺口的圆环,后面通过改变缺口的位置大小来实现转动效果,如: .path { stroke-dasharray: 95, 126; /*设置实线长95,虚线长...字体图标下载后,将解压后的内容拷贝到项目中,并引入其中的iconfont.css到页面中,给要显示字体图标的元素加上iconfont类样式,字体图标会有一个对应的unicode编码,通过::before

3.2K10

《CSS揭秘》读书总结:背景与边框

假设我们想给一个容器设置一层白色背景和一道半透明白色边框,body 的背景会从它的半透明边框透上来。...解决方案 默认状态下,背景会延伸到边框的区域下层,结合下面绿色背景虚线边框比较好理解: ?...当圆角半径为 r 时,从圆角的圆心到描边顶角的长度就是 r√2,这意味着投影的扩张半径 spread 值不能小于 r√2 - r = (√2 - 1)r。同时,该值还需要比描边的宽度值小。 5....针对上面的代码,还可以有改进方案,理论依据如下: “如果某个色标的位置值比整个列表中在它之前的色标的位置值都要 小,则该色标的位置值会被设置为它前面所有色标位置值的最大值。”...——CSS 图像(第三版)(http://w3.org/TR/css3-images) 所以,如果我们把第二个色标的位置值设置为 0,那它的位置就总是会被浏览器调整为前一个标的位置值。

1.7K40

自定义 Drawable 你还只会 吗?

最近做需求的时候,设计师出了一张这样的设计稿 其中每一个卡片的背景都是从上到下渐变,仔细看其中的边框也是渐变的,这个要怎么实现呢?第一个能想到的最简单的办法就是让设计师导出包含边框的完整的背景切。...但是作为一个优(ban)秀(zhuan)的开发工程师,当然要想办法自己实现啦,用切你就输啦!...比如我们可以在底下放置一个深色的图层,上层再放置一个白色图层,白色图层比下层宽高小 2dp,两个图层居中展示,这样就实现一个宽度为 1dp 的边框了。...: 至此,渐变的边框实现了,仔细看设计稿,还有一个隐藏难题:仔细看,头像部分还有一个阴影 这咋办,按照以往的做法,这里肯定是直接使用切了,但是,作为一个优秀的......好了话不多少,看看怎么实现吧:从设计稿上看,这里阴影的偏移是 4,还有个模糊半径 4,难道还要动用高斯模糊吗...有没有简单的办法呢 用gradient实现阴影效果 直接用一个圆形的渐变看看效果如何 <

7910

图标小结

8、小结各个图表的英文单词balinescatter/effectScattepiemapradagauge图片使用场景柱状:柱状描述的是分类数据,呈现的是每一个分类中有多少折线图:折线图常用来分析数据随时间的变化趋势散点图...:散点图可以帮助我们推断出不同维度数据之间的相关性饼:饼可以很好地帮助用户快速了解不同分类的数据的占比情况地图:地图主要可以帮助我们从宏观的角度快速看出不同地理位置上数据的差异雷达:雷达可以用来分析多个维度的数据与标准数据的对比情况仪表盘...:仪表盘可以更直观的表现出某个指标的进度或实际情况四、配置项小结1、柱状 baseries[].type xAxis yAxis markPoint markLine label...pieseries[].type label radius roseType selectedMode selectedOffset图表类型 显示文本 半径...边框颜色 边框圆角left top right bottom左边 顶部 右边 底部tooltiptrigger triggerOn formatte

1.9K10

Css 小技巧

页面构建 一、边框内圆角 我们在设计例如按钮等控件的时候,会遇到这样的设计:只有内侧有圆角,而边框或者描边的四个角还是保持直角的形状,用以下代码可以轻松的实现。 ?...同时利用 outline 的特性:描边不跟随边框绘制的特点来实现(因为不清楚这是不是一个bug,所以在将来的版本中可能会改变),具体代码如下。...spread-radius 这种实现方式,对于边框的宽度和圆角的大小有一定的限制效果。仅当边框宽度 w 与圆角半径 r 存在 w ≥ (√2-1)r 关系时才可实现....使用 background-size 属性 如果某个色标的位置值比整个列表中在它之前的色标的位置值都要小,则该色标的位置值会被设置为它前面所有色标位置值的最大值。...如何使用一个元素就实现这样的效果。 解决办法:将平行四边形的背景设置在伪元素上,对伪元素进行变形。

1K00

01-移动端开发教程-CSS3新特性(上)

(如中文、日文、韩文等); E::first-line 文本第一行; E::selection 可改变选中文本的样式; E::before、E::after 是一个行内元素,需要转换成块元素。...取值: :用长度值设置对象的圆角半径长度。不允许负值 :用百分比设置对象的圆角半径长度。不允许负值 默认值:0 说明: 设置或检索对象使用圆角边框。...设置边框阴影不会改变盒子的大小,即不会影响其兄弟元素的布局。 可以设置多重边框阴影,实现更好的效果,增强立体感。...border-image 边框的背景非常类似盒子的背景的应用。...border-image是边框背景多个属性的合写,可以一个属性里面设置多个值。

1.5K01

【Flutter 专题】122 图解自定义半遮挡头像 SeriesCircleProfile & CircleAvatar

本地图 & 网络 和尚在自定义传递头像 URL 时考虑到,可能是网络也可能是本地图,甚至是两者混合展示的;主要分为两类: 2.1 纯本地图 & 纯网络 和尚设置 isAsset 为...2.2 本地图片 + 网络混合 和尚设置一个 List</map 类型的 mixUrlList,Map 中存储是否为本地图和图片地址,遍历加载时通过 bool 类型判断即可; if...末尾图标 在用户头像较多点情况下,很多场景需要一个末尾省略图标,和尚提供了一个 endIcon 的 Widget 以供自定义图标的样式,可以是图片或文字或其他等展示效果;值得注意的是,之前和尚设置了...自定义 Border 对于个性化需求,是否需要边框,以及边框颜色和粗细,这些属于相对简单边缘的功能点;和尚予以补充,添加了 isBorder、borderColor 和 borderWidth...// 最小半径 this.maxRadius, // 最大半径 }) 简单分析源码可得,主要是通过 BoxConstraints 来限制最大最小半径,而 backgroundImage

1.1K51

【CSS】714- 你所不知道的 CSS 负值技巧与细节

修改 outline-offset 到一个合适的负值 ,那么在恰当的时候,outline 边框就会向内缩进为一个加号。...那还有没有其他一些有意思的负值使用技巧呢? 下文就再介绍一些 CSS 负值有意思的使用场景。...] ]# } 以 box-shadow: 1px 2px 3px 4px #333 为例,4 个数值的含义分别是,x 方向偏移值、y 方向偏移值 、模糊半径、扩张半径。...这里有一个小技巧,扩张半径可以为负值。 继续,如果阴影的模糊半径,与负的扩张半径一致,那么我们将看不到任何阴影,因为生成的阴影将被包含在原来的元素之下,除非给它设定一个方向的偏移量。...OK,其中一种 Hack 办法便是使用一个很大的正 padding 和相同的负 margin 相消的方法填充左右两栏: .g-left { ...

62710

你所不知道的 CSS 负值技巧与细节

边框就会向内缩进为一个加号。...,要使用负的 outline-offset 生成一个加号有一些简单的限制: 容器得是个正方形 outline 边框本身的宽度不能太小 outline-offset 负值 x 的取值范围为: -(容器宽度的一半...那还有没有其他一些有意思的负值使用技巧呢? 下文就再介绍一些 CSS 负值有意思的使用场景。...这里有一个小技巧,扩张半径可以为负值。 继续,如果阴影的模糊半径,与负的扩张半径一致,那么我们将看不到任何阴影,因为生成的阴影将被包含在原来的元素之下,除非给它设定一个方向的偏移量。...OK,其中一种 Hack 办法便是使用一个很大的正 padding 和相同的负 margin 相消的方法填充左右两栏: .g-left { ...

59220

面向 python 小白的贪吃蛇游戏

游戏简介 首先是游戏效果: ? 用户通过操控贪吃蛇,去吃到尽可能多的食物。其中贪吃蛇不能碰到墙壁,也不能咬到自身。...但是如果想让贪吃蛇活蹦乱跳,我们就要写一个move函数。 那么贪吃蛇怎么移动呢? 如果贪吃蛇没吃到食物,那么我们就删除list中最后一个坐标,再在蛇头部分插入新的位置。...toward函数,用于改变蛇头的方向,但如果改变方向与当前方向相反,就什么操作都不执行。draw函数用于画出贪吃蛇的模样,蛇头是略大一点的红心⚪,蛇身是小一点的黄心⚪。 我们怎么画出这条蛇呢?...,width:内部填色的大小,如果为零,图案就是空心圆;如果与半径大小相同,图案就是实心圆。...24), ] self.x = 0 self.y = -1 def move(self, enlarge): # enlarge 标记贪吃蛇有没有吃到食物

1.3K30

iOS编程101:如何创建圆形头像和圆角图片

layer对象提供了多种属性,使用它们来控制视图的可视内容: 背景颜色 边框边框宽度 阴影颜色,宽度等 Opacity(不透明度) 圆角半径 Corner radius就是我们用来绘制圆角和圆形图像的属性...创建圆形用户头像 接下来,让我们看看如何通过改变圆角半径,使用户头像转换成一个圆形图像。...所以上面的第一行是设置layer对象(CALayer类的一个实例)的圆角半径。将方形图像变成圆形图像,半径应设置为UIImageView宽度的一半。例如,如果方形图像的宽度是100像素。...半径应设置为50像素。其次,你必须将clipsToBounds属性设置为YES,这样layer才能生效。 现在编译和运行应用程序,你会得到一个圆形头像。 ? 非常容易吧。...再次编译并运行应用程序,您现在应该看到一个拥有白色边框的头像。 创建圆角图片 你可以使用同样的方法来创建圆角图像。关键是要改变圆角半径,并将其设置为其他值。

2.1K20

Fabric.js 自由绘制圆形

思路 Fabric.js 默认的框选操作是矩形,如果需要做到上图的效果,需要做以下3步: 点击画布时 canvas.on('mouse:down', fn),创建一个圆形。...如果 “移动鼠标的坐标点” 在 点击时的坐标点 左侧或者上方,需要将圆形的左上角移到 “移动鼠标的坐标点” 。 动手实现 我在这里贴出用 原生方式 实现的代码和注释。...100, 255, 0.3)' // 选框填充色:半透明的蓝色 canvas.selectionBorderColor = 'rgba(255, 255, 255, 0.3)' // 选框边框颜色...canvas.selectionColor = 'transparent' // 选框填充色:透明 canvas.selectionBorderColor = 'transparent' // 选框边框颜色...canvasMouseUp(e) { upPoint = e.absolutePointer if (currentType === 'circle') { // 如果鼠标点击和松开是在同一个坐标

3.7K30

CSS 边框秘探

假设我们想给一个容器设置「一层白色背景」和「一道半透明白色边框」,body 的背景会从它的半透明边框透上来。...image-20220526140422734 我们的边框去哪儿了啊?而且如果我们连使用半透明颜色都不能实现半透明边框,那我们还有什么办法?! 尽管看起来并不像那么回事,但我们的边框其实是存在的。...不过,我们还有更好的办法来解决这个难题,并不需要添加无用的额外元素来污染我们的结构。那就是box-shadow。 box-shadow 属性用于在元素的框架上添加阴影效果。...你可以在同一个元素上设置多个阴影效果,并用逗号将他们分隔开。该属性可设置的值包括「阴影的X轴偏移量」、「Y轴偏移量」、「模糊半径」、「扩散半径」和「颜色」。...不太为人所知的是,它还接受第四个参数(「扩散半径」),通过指定正值或负值,可以让投影面积加大或者减小。一个正值的扩张半径加上两个为零的偏移量以及为零的模糊值,得到的“投影”其实就像一道实线边框

2.1K10

【Java案例】打印五环

1.7 奥运五环旗 案例分析 观察奥运五环旗的图案,直观的感觉,由五个圆组成,每个圆的颜色不一样,大小一样,按照一定的位置摆放,找到圆心坐标的规律,就可以通过Graphics类提供的绘制椭圆的方法...1.8 奥运五环旗坐标分析 上面三个圆的圆心a、b、c的y坐标相同,下面两个圆的圆心d、e的y坐标相同,ab=bc=ad=de,为保证两个圆相交,两个圆的圆心距离必须小于2r(r代表圆的半径)。...存储圆心的x坐标 private int[] x={100,136,172,118,154}; //y[]存储圆心的y坐标 private int[] y={60,60,60,91,91}; //r代表半径...1.9 程序输出结果 6 案例优化 1.9所示奥运五环旗没有1.7看着舒服,线条有点细,如果能加粗就好了,可惜Graphics类创建的画笔的粗细是默认的,我们不能改变它。...有人提出一个圆环可以由两个圆重叠而成,通过在一个圆的内部紧贴一个稍小的圆即可达到加粗线条的目的,这个思路是可以的,感觉比较麻烦哟,感兴趣可以试一下,有没有简单点的办法?答案是肯定的。

1.2K50

大屏可视化之番外篇图标图表制作 图标1图标2图标3图标4,5图表总结

在我们的产品拓扑大屏编辑器中,有一个图元编辑功能。图元编辑功能,可以通过配置实现代码生成图标的效果。 下面,我们示意一些图标的制作。 图标1 ?...首先拖一个矩形,调整大小: ? 然后指定合适的圆角半径,即可得到需要的图形: ? 加上圆形 圆环等,即可得到下面的图标: ? 图标3 如下的图标: ?...比如下面的一张,是一个项目中实际用到的: ? 图中有两个小的图表,两个图表比较类似,我们可以演示如何实现右边的图表效果: ? 可以看出,上述图表都都是由圆形和扇形等基本图形组成的。...首先在页面上面拖出来四个圆形,然后分别调整他们的填充颜色,大小,边框颜色,起始结束角度等,可以得到如下图形: ? 对于第一个圆形,只需要设置图形的尺寸,然后分别设置填充色和边框颜色即可: ?...对于第二个圆形,设置尺寸,设置不显示边框但现实填充,但是把填充的颜色设置为渐变的效果: ? 对于第一个圆形,只需要设置图形的尺寸,然后分别设置填充色和边框颜色,并设置其起始角度和结束角度: ?

3K30
领券