From d0abfd9294d5217c8e53bac7b2ffad6d60dd03db Mon Sep 17 00:00:00 2001 From: zengfantian Date: Fri, 23 Oct 2015 15:55:10 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E4=B9=9D=E5=AE=AB=E6=A0=BC?= =?UTF-8?q?=E6=89=8B=E5=8A=BF=E8=A7=A3=E9=94=81=E6=A0=B7=E4=BE=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- AndroidManifest.xml | 34 +- res/anim/lock9_node_on_1.xml | 12 + res/anim/lock9_node_on_2.xml | 14 + res/drawable/lock9_node_active.png | Bin 0 -> 22236 bytes res/drawable/lock9_node_correct.png | Bin 0 -> 24665 bytes res/drawable/lock9_node_error.png | Bin 0 -> 24502 bytes res/drawable/lock9_node_normal.png | Bin 0 -> 6058 bytes res/drawable/lock9_node_small.png | Bin 0 -> 3195 bytes res/layout/activity_l_style_lock.xml | 22 ++ res/layout/activity_lock_main.xml | 24 ++ res/layout/activity_normal_lock.xml | 20 + res/values/attrs_views.xml | 17 + res/values/colors_views.xml | 5 + res/values/strings_sample.xml | 6 + .../library/widget/gesture/Lock9View.java | 359 ++++++++++++++++++ .../sample/gesture/LStyleActivity.java | 45 +++ .../sample/gesture/Lock9DemoActivity.java | 42 ++ .../sample/gesture/NormalActivity.java | 44 +++ 18 files changed, 640 insertions(+), 4 deletions(-) create mode 100644 res/anim/lock9_node_on_1.xml create mode 100644 res/anim/lock9_node_on_2.xml create mode 100644 res/drawable/lock9_node_active.png create mode 100644 res/drawable/lock9_node_correct.png create mode 100644 res/drawable/lock9_node_error.png create mode 100644 res/drawable/lock9_node_normal.png create mode 100644 res/drawable/lock9_node_small.png create mode 100644 res/layout/activity_l_style_lock.xml create mode 100644 res/layout/activity_lock_main.xml create mode 100644 res/layout/activity_normal_lock.xml create mode 100644 src/com/zftlive/android/library/widget/gesture/Lock9View.java create mode 100644 src/com/zftlive/android/sample/gesture/LStyleActivity.java create mode 100644 src/com/zftlive/android/sample/gesture/Lock9DemoActivity.java create mode 100644 src/com/zftlive/android/sample/gesture/NormalActivity.java diff --git a/AndroidManifest.xml b/AndroidManifest.xml index f91f87e..f2ed705 100644 --- a/AndroidManifest.xml +++ b/AndroidManifest.xml @@ -755,6 +755,32 @@ + + + + + + + + + + + + + @@ -877,7 +903,7 @@ + --> @@ -910,7 +936,7 @@ diff --git a/res/anim/lock9_node_on_1.xml b/res/anim/lock9_node_on_1.xml new file mode 100644 index 0000000..4f9c545 --- /dev/null +++ b/res/anim/lock9_node_on_1.xml @@ -0,0 +1,12 @@ + + + + \ No newline at end of file diff --git a/res/anim/lock9_node_on_2.xml b/res/anim/lock9_node_on_2.xml new file mode 100644 index 0000000..c46da30 --- /dev/null +++ b/res/anim/lock9_node_on_2.xml @@ -0,0 +1,14 @@ + + + + \ No newline at end of file diff --git a/res/drawable/lock9_node_active.png b/res/drawable/lock9_node_active.png new file mode 100644 index 0000000000000000000000000000000000000000..40bcffa3d39fd7407b00b64f25ace4e62af853d6 GIT binary patch literal 22236 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 R&C>g4cNkh2lx%l9@L%p;8lnII literal 0 HcmV?d00001 diff --git a/res/drawable/lock9_node_correct.png b/res/drawable/lock9_node_correct.png new file mode 100644 index 0000000000000000000000000000000000000000..b81fd79439da92b52444bbca950fe4676404e72f GIT binary patch literal 24665 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 literal 0 HcmV?d00001 diff --git a/res/drawable/lock9_node_error.png b/res/drawable/lock9_node_error.png new file mode 100644 index 0000000000000000000000000000000000000000..cf15a663c4b3e29cffa10c7b297477826a0ac364 GIT binary patch literal 24502 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 literal 0 HcmV?d00001 diff --git a/res/drawable/lock9_node_small.png b/res/drawable/lock9_node_small.png new file mode 100644 index 0000000000000000000000000000000000000000..4640a6b05c9a3b8ab2e5471bf664a487ea7ceb2e GIT binary patch literal 3195 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 literal 0 HcmV?d00001 diff --git a/res/layout/activity_l_style_lock.xml b/res/layout/activity_l_style_lock.xml new file mode 100644 index 0000000..cf0d11a --- /dev/null +++ b/res/layout/activity_l_style_lock.xml @@ -0,0 +1,22 @@ + + + + + + diff --git a/res/layout/activity_lock_main.xml b/res/layout/activity_lock_main.xml new file mode 100644 index 0000000..1d7b1a8 --- /dev/null +++ b/res/layout/activity_lock_main.xml @@ -0,0 +1,24 @@ + + + +