请选择 进入手机版 | 继续访问电脑版
查看: 5280|回复: 1

[Android开发资源分享] Android例子源码:仿支付宝手势密码的功能实现

[复制链接]
发表于 2015-3-27 15:15 | 显示全部楼层 |阅读模式
本项目是一个仿支付宝手势密码部分的源码,项目在1280×720分辨率上显示有问题,在 854x480上没有问题,项目编码UTF-8默认编译版本4.4.2,实现思路:, P9 V3 E4 p9 n" X; J
1.要用一个类来表示这9个点中的第一个点。里面保留有当前点的上下左右的各个位置等属性;# v# l3 Z& f3 L; T8 h* ]
2.自定义GroupView,用来装9个点,9个点的显示是通过ImageView。复写onLayout这个方法,让点按需求排列;; R- V* o# n+ t! r* f
3.定义一个可以画线的View,复写onTouchEvent方法,在这个方法里面进行画直线的操作;
; N6 p! j0 K. r/ j" O& ~" H4.判断用户手指当前的位置,取出当前的位置去与那9个点中的每个点的位置进行比较,如果用户点的位置在某一个点之内,那么当那个点置换背景图片。
2014-09-11-14-48-18[1].jpg
; S" y; B& \2 G% [ 2014-09-11-14-48-36[1].jpg
: Y3 i6 A8 X% F- I" `$ U+ a0 L, p 2014-09-11-14-49-08[1].jpg - ]2 c+ C0 f+ Q. O. L$ [

0 d" D9 @* k1 t4 o* f2 E* E源码片段:) q8 j' [! A& h1 e
  1. public class MainActivity extends Activity {
    4 v. F6 I; r4 L& Q* l2 A7 ~6 Y

  2. + d+ l- \5 X0 @* h' N
  3.     private FrameLayout body_layout;7 T& y/ ~3 r! E- o$ f
  4.     private ContentView content;% x4 W  r% x/ o
  5. 8 C2 B8 o2 t  b# |
  6.     @Override
    . d8 O( o/ y/ U- ?; M: I8 T8 c! y
  7.     protected void onCreate(Bundle savedInstanceState) {2 R5 @; i3 K# E5 D2 w$ p4 D
  8.         super.onCreate(savedInstanceState);
    4 u3 b9 H3 v- @8 J, x1 j" n
  9.         setContentView(R.layout.activity_main);
    9 d( c0 q. [) G  a' o
  10.         body_layout = (FrameLayout) findViewById(R.id.body_layout);
    ( c* j. J$ a( T: U$ N" w

  11. $ z, j; y% l8 v, I/ `
  12. + o8 ^6 s. q# A! @$ C0 x! O5 q$ l
  13.         // 初始化一个显示各个点的viewGroup
    4 R' N4 _. f3 Z9 k
  14.         content = new ContentView(this, "123654789",new GestureCallBack() {# F( Z1 e0 c( e5 }( i

  15. . z, J" }8 W& j- X9 }% I
  16.             @Override9 ]' I1 g$ j' `! S! J% k
  17.             public void checkedSuccess() {$ G) x  X9 M) ?- K4 }. ^+ ?
  18.                 Toast.makeText(MainActivity.this,"校验成功", Toast.LENGTH_SHORT).show();+ k* d* N, N& }, W! Z
  19.             }
    / ~( g& Z7 ~' |# o/ [

  20. & w) x9 o, G6 Q0 ~
  21.             @Override' p: B2 w5 O) z; ?. i8 L7 M
  22.             public void checkedFail() {
    2 P7 U- I& [% e
  23.                 Toast.makeText(MainActivity.this,"校验失败", Toast.LENGTH_SHORT).show();
    4 m) L. i  A7 O+ N  a5 C+ E
  24.             }6 W" w& D4 D3 N2 S
  25.         });0 \6 {1 N$ L/ V- r/ T
  26.         //设置手势解锁显示到哪个布局里面. u$ N3 y, a/ i4 T3 I! c
  27.         content.setParentView(body_layout);; R; \1 H, f* x. `( ?' |
  28.     }
    6 L, h; |" s) t2 X/ D

  29. ; G; x. G; F5 B* o' I7 d
  30. }
复制代码

( Z" k% n  H; h
4 a& S# z) ^! m: `3 P% _$ A源码下载:+ T, O, w. d6 n( H
游客,如果您要查看本帖隐藏内容请回复

% \' {# X( |4 o
发表于 2015-3-30 14:18 | 显示全部楼层
Android开发源码:聚融网贷款投标助手
您需要登录后才可以回帖 登录 | 注册

本版积分规则

© 2001-2014Comsenz Inc.

快速回复 返回顶部 返回列表