Android 自定义View 密码框 例子
遵从准则
样式图片链接:http://images.cnitblog.com/blog/275810/201406/201603541141956.jpg
暴露您view中所有影响可见外观的属性或者行为。
通过XML添加和设置样式
通过元素的属性来控制其外观和行为,支持和重要事件交流的事件监听器
可以通过XML定义影响外边和行为的属性如下
边框圆角值,边框颜色,分割线颜色,边框宽度,密码长度,密码大小,密码颜色
<declare-styleable name="PasswordInputView">
<attr name="borderWidth" format="dimension"/>
<attr name="borderColor" format="color"/>
<attr name="borderRadius" format="dimension"/>
<attr name="passwordLength" format="integer"/>
<attr name="passwordWidth" format="dimension"/>
<attr name="passwordColor" format="color"/>
<attr name="passwordRadius" format="dimension"/>
</declare-styleable>
同时支持原来EditText功能,可以获得数据值,数字键盘设置等
绘制逻辑的主要代码
protected void onDraw(Canvas canvas) {
int width = getWidth();
int height = getHeight();
// 外边框
RectF rect = new RectF(0, 0, width, height);
borderPaint.setColor(borderColor);
canvas.drawRoundRect(rect, borderRadius, borderRadius, borderPaint);
// 内容区
RectF rectIn = new RectF(rect.left + defaultContMargin, rect.top + defaultContMargin,
rect.right - defaultContMargin, rect.bottom - defaultContMargin);
borderPaint.setColor(Color.WHITE);
canvas.drawRoundRect(rectIn, borderRadius, borderRadius, borderPaint);
// 分割线
borderPaint.setColor(borderColor);
borderPaint.setStrokeWidth(defaultSplitLineWidth);
for (int i = 1; i < passwordLength; i++) {
float x = width * i / passwordLength;
canvas.drawLine(x, 0, x, height, borderPaint);
}
// 密码
float cx, cy = height/ 2;
float half = width / passwordLength / 2;
for(int i = 0; i < textLength; i++) {
cx = width * i / passwordLength + half;
canvas.drawCircle(cx, cy, passwordWidth, passwordPaint);
}
}
完整代码下载
https://github.com/tianshaojie/Android-PasswordInputView
分享到:
相关推荐
本文将深入探讨如何根据标题"Android自定义View仿支付宝输入六位密码功能,自定义支付密码PopupWindow"来实现一个类似支付宝的六位数字密码输入界面,并通过自定义PopupWindow实现。 首先,我们了解`PopupWindow`。...
综上所述,开发一个仿支付宝、微信的输入密码框涉及到了Android自定义View的绘制、触摸事件处理、键盘交互、数据安全、动画效果等多个方面的技术知识。通过实践和不断优化,我们可以构建出一个功能完备且用户体验...
本项目“仿支付宝芝麻信用分自定义view”旨在模拟支付宝应用程序中的芝麻信用分展示视图,这涉及到对Android UI设计、自定义View的绘制以及动画效果的实现。 首先,自定义View的基础是理解Android的View类和...
跳转支付宝APP支付,也称为H5支付或者Web支付,适用于无法或不希望自定义支付界面的情况。在这种模式下,应用会调用支付宝SDK的方法,打开支付宝应用,然后在支付宝内部完成支付流程。此过程涉及的主要API是`...
"android自定义密码输入框"是一个项目,旨在模仿支付宝等金融应用中常见的六位数字密码输入方式。这种输入框通常用于增强安全性,例如在进行支付或验证身份时。下面将详细介绍这个项目及其相关知识点。 1. 自定义...
在IT行业中,自定义密码框的实现是一种常见的需求,尤其在金融、支付类应用中,如微信和支付宝。为了提供用户友好的体验和增强安全性,这些应用通常会使用特殊的密码输入方式,例如数字键盘或者六位数字密码输入框。...
"自定义View实现支付宝输入六位密码"这个主题聚焦于如何模仿支付宝应用中的六位数字密码输入界面。以下我们将深入探讨实现这样一个自定义View所需的关键知识点。 首先,我们需要了解Android View的基本构造。一个...
在Android开发中,自定义View是一项重要的技能,它允许开发者根据特定需求创建独特且具有交互性的界面元素。本文将深入探讨如何使用属性动画和PathMeasure来实现一个支付宝支付成功的动画效果。 首先,我们需要理解...
总结来说,Android提供了多种方式来创建自定义的Loading加载框,包括View动画、Drawable动画以及自定义View。根据实际需求和动画复杂度,选择合适的方法可以让你的应用加载过程更加生动有趣,提高用户体验。通过实践...
此资源"安卓支付宝天猫淘宝相关相关-自定义view方式实现仿支付宝支付弹框效果dialog是参照系统dialog方式实现的万能dialog.rar"提供了自定义Dialog的示例,帮助开发者构建类似支付宝支付弹框的交互效果。以下是对这...
本文将深入探讨如何实现一个自定义View,具体案例为仿支付宝芝麻分表盘,这对于初学者来说是一个很好的实践项目。 首先,我们需要理解自定义View的基本流程。在Android中,自定义View通常涉及以下步骤: 1. **创建...
实现六位密码框,可中途删除修改,期间只可操作单个输入框,简单易懂,一个自定义类搞定,可扩展性强,自己可以下载根据自己需要进行修改和使用,内部使用自定义view搞定,可下载参考,如有不足请提出,后续进行修改
在Android应用开发中,为了提供类似支付宝的支付体验,开发者经常需要实现自定义键盘功能,以便用户输入支付密码。这个项目“android仿支付宝支付密码和自定义键盘”就是这样一个示例,它允许开发者轻松地创建一个...
本教程将深入探讨如何在Android中创建一个仿支付宝支付密码输入界面的自定义控件,并修复一些显示上的问题。这个自定义控件名为"MyPayUI",旨在提供与支付宝类似的用户体验。 首先,我们需要了解支付密码界面的基本...
在Android开发中,自定义View是一项重要的技能,它允许开发者根据特定需求创建独特且功能丰富的用户界面。这个“android 自定义view比较综合的例子”显然涵盖了多个高级话题,旨在帮助有一定基础的开发者提升自定义...
标题中的“支付密码输入自定义View”指的是在移动应用开发中,为了提高用户的安全体验,开发者通常会创建一个自定义的视图组件来专门处理支付密码的输入。这个自定义视图可以是独立的XML布局文件,或者是一个自定义...
总的来说,通过自定义View和TextWatcher,安卓开发者能够轻松地实现类似支付宝、天猫和淘宝应用中的方格密码输入效果,提供一种安全且友好的用户交互体验。这个过程涉及到对安卓图形绘制、事件监听以及自定义组件的...
总的来说,实现“Android仿支付宝支付密码自定义控件界面”需要掌握Android自定义View的原理和实践,包括触摸事件处理、图形绘制、动画制作以及用户交互设计。通过`MyPayUI`类的设计与实现,我们可以打造出一个功能...
在Android应用开发中,创建一个自定义的仿支付宝密码输入框是提高用户体验的重要步骤。这个自定义组件通常被称为“一字一框”的密码输入框,它允许用户每输入一个字符,都会在界面上显示一个单独的框,从而提供更好...