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

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

[复制链接]
发表于 2015-3-27 15:15 | 显示全部楼层 |阅读模式
本项目是一个仿支付宝手势密码部分的源码,项目在1280×720分辨率上显示有问题,在 854x480上没有问题,项目编码UTF-8默认编译版本4.4.2,实现思路:  Z$ f- z6 h' k% k
1.要用一个类来表示这9个点中的第一个点。里面保留有当前点的上下左右的各个位置等属性;! a6 A- y0 {* A' I8 r" }! N
2.自定义GroupView,用来装9个点,9个点的显示是通过ImageView。复写onLayout这个方法,让点按需求排列;0 A  \4 i9 \; A3 }9 H
3.定义一个可以画线的View,复写onTouchEvent方法,在这个方法里面进行画直线的操作;% Q, Z# N4 A* K& N3 s' I; ^
4.判断用户手指当前的位置,取出当前的位置去与那9个点中的每个点的位置进行比较,如果用户点的位置在某一个点之内,那么当那个点置换背景图片。
2014-09-11-14-48-18[1].jpg
6 [: u" m# Z+ N 2014-09-11-14-48-36[1].jpg
# L5 M( l6 d8 p; _ 2014-09-11-14-49-08[1].jpg
% {3 W& t2 _5 W4 D: {$ Z
6 @3 \/ o* C: S$ P7 I7 Y源码片段:: J: U( i* X5 Q. q: R3 S3 b. }: w7 l
  1. public class MainActivity extends Activity {
    ; h2 j. {! F0 `* a/ y7 {0 i
  2. ) u6 w5 M4 h1 p' l; ^. R$ O
  3.     private FrameLayout body_layout;6 ?( _/ ~8 ?7 d% `, ]
  4.     private ContentView content;
    ) O! F% t( `+ W$ I& I- B5 L
  5. 6 ^* N7 P' Y; C3 h: g# h+ y4 I
  6.     @Override
    ) }6 x9 y( @' a' O) H
  7.     protected void onCreate(Bundle savedInstanceState) {) W4 s8 F& h; T
  8.         super.onCreate(savedInstanceState);5 \, u; u, {2 G1 g4 A1 a% @
  9.         setContentView(R.layout.activity_main);
    : v& i% z! }5 Z8 N& e7 P7 ^5 Q
  10.         body_layout = (FrameLayout) findViewById(R.id.body_layout);- M1 r) ^8 g* o

  11. ) V6 e7 @8 F/ M# s
  12. 1 B5 H% p, j  i- C. U( E& a
  13.         // 初始化一个显示各个点的viewGroup
    : N/ K  L7 y% n& S
  14.         content = new ContentView(this, "123654789",new GestureCallBack() {+ j$ N" b6 U7 _% H" U

  15. & P' d& F8 v$ q4 j7 j) \
  16.             @Override4 r. V8 r( O5 A% V0 l4 Z2 c
  17.             public void checkedSuccess() {
    " O) ^; H8 S+ n# I9 l
  18.                 Toast.makeText(MainActivity.this,"校验成功", Toast.LENGTH_SHORT).show();7 o& X- t  T6 B
  19.             }% }6 P' C3 V4 G& J9 b+ P0 Z, h
  20. / N/ r/ r4 M) g$ H& Y, o( R
  21.             @Override
    6 s' m/ X3 q9 X- f! ?, A; }
  22.             public void checkedFail() {; b; v+ ]6 ?% w9 P( O
  23.                 Toast.makeText(MainActivity.this,"校验失败", Toast.LENGTH_SHORT).show();
    7 e2 _& i! c& X4 b- u  C
  24.             }
    ! f3 _- l0 @, |# V
  25.         });
    8 N" y4 B: _  n* B3 R* `
  26.         //设置手势解锁显示到哪个布局里面8 o5 _: @4 I( W: ^
  27.         content.setParentView(body_layout);
    $ J, ]7 C  Y3 ^9 K6 k
  28.     }  Q9 z0 M' L+ J/ E+ d: f

  29. 3 [6 f* e3 C, k* J) L
  30. }
复制代码

8 a6 w( `% [. j3 @/ T0 X5 k# c7 I5 V8 `6 t
源码下载:% ^' N) b1 Q" B; q3 r; Z
游客,如果您要查看本帖隐藏内容请回复

; \& J( t7 C! z6 U2 r
发表于 2015-3-30 14:18 | 显示全部楼层
Android开发源码:聚融网贷款投标助手
您需要登录后才可以回帖 登录 | 注册

本版积分规则

© 2001-2014Comsenz Inc.

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