diff --git a/.gitignore b/.gitignore new file mode 100644 index 00000000..5ac2e8c7 --- /dev/null +++ b/.gitignore @@ -0,0 +1,42 @@ +lt application files +*.apk +*.ap_ + +# Files for the ART/Dalvik VM +*.dex + +# Java class files +*.class + +# Generated files +bin/ +gen/ +out/ + +# Gradle files +.gradle/ +build/ + +# Local configuration file (sdk path, etc) +local.properties + +# Proguard folder generated by Eclipse +proguard/ + +# Log Files +*.log + +# Android Studio Navigation editor temp files +.navigation/ + +# Android Studio captures folder +captures/ + +# Intellij +*.iml +.idea/ + +# Keystore files +*.jks + + diff --git a/app/build.gradle b/app/build.gradle index b01b2bb4..1ff45f71 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -1,13 +1,13 @@ apply plugin: 'com.android.application' android { - compileSdkVersion 23 - buildToolsVersion "23.0.3" + compileSdkVersion 25 + buildToolsVersion "25.0.2" defaultConfig { applicationId "com.andrognito.pinlockviewapp" - minSdkVersion 11 - targetSdkVersion 23 + minSdkVersion 17 + targetSdkVersion 25 versionCode 1 versionName "1.0" } @@ -20,8 +20,8 @@ android { } dependencies { - compile fileTree(dir: 'libs', include: ['*.jar']) + compile fileTree(include: ['*.jar'], dir: 'libs') + compile 'com.android.support:appcompat-v7:25.1.0' testCompile 'junit:junit:4.12' - compile 'com.android.support:appcompat-v7:23.4.0' compile project(':pinlockview') } diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 639bfa3e..1ab295f4 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -1,6 +1,6 @@ - + - - + - + + + \ No newline at end of file diff --git a/app/src/main/assets/timeburnernormal.ttf b/app/src/main/assets/timeburnernormal.ttf new file mode 100755 index 00000000..28cee22e Binary files /dev/null and b/app/src/main/assets/timeburnernormal.ttf differ diff --git a/app/src/main/java/com/andrognito/pinlockviewapp/SampleActivity.java b/app/src/main/java/com/andrognito/pinlockviewapp/SampleActivity.java index 188e22d7..64031c48 100644 --- a/app/src/main/java/com/andrognito/pinlockviewapp/SampleActivity.java +++ b/app/src/main/java/com/andrognito/pinlockviewapp/SampleActivity.java @@ -1,10 +1,13 @@ package com.andrognito.pinlockviewapp; +import android.content.Intent; import android.os.Bundle; import android.support.v7.app.AppCompatActivity; import android.util.Log; +import android.view.View; import android.view.Window; import android.view.WindowManager; +import android.widget.Button; import com.andrognito.pinlockview.IndicatorDots; import com.andrognito.pinlockview.PinLockListener; @@ -16,6 +19,7 @@ public class SampleActivity extends AppCompatActivity { private PinLockView mPinLockView; private IndicatorDots mIndicatorDots; + private Button mBtnExample2; private PinLockListener mPinLockListener = new PinLockListener() { @Override @@ -41,6 +45,7 @@ protected void onCreate(Bundle savedInstanceState) { getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN); setContentView(R.layout.activity_sample); + mBtnExample2 = (Button) findViewById( R.id.btn_goto_example2 ); mPinLockView = (PinLockView) findViewById(R.id.pin_lock_view); mIndicatorDots = (IndicatorDots) findViewById(R.id.indicator_dots); @@ -49,5 +54,13 @@ protected void onCreate(Bundle savedInstanceState) { mPinLockView.setPinLength(6); mPinLockView.setTextColor(getResources().getColor(R.color.white)); + + mBtnExample2.setOnClickListener( new View.OnClickListener(){ + @Override + public void onClick( View v ){ + Intent i = new Intent( SampleActivity.this, SampleActivity2.class ); + startActivity( i ); + } + } ); } } diff --git a/app/src/main/java/com/andrognito/pinlockviewapp/SampleActivity2.java b/app/src/main/java/com/andrognito/pinlockviewapp/SampleActivity2.java new file mode 100644 index 00000000..a39d2c9c --- /dev/null +++ b/app/src/main/java/com/andrognito/pinlockviewapp/SampleActivity2.java @@ -0,0 +1,61 @@ +package com.andrognito.pinlockviewapp; + +import android.os.Bundle; +import android.support.v7.app.AppCompatActivity; +import android.util.Log; +import android.view.Window; +import android.view.WindowManager; + +import com.andrognito.pinlockview.IndicatorDots; +import com.andrognito.pinlockview.LeftButtonClickListener; +import com.andrognito.pinlockview.PinLockAdapter; +import com.andrognito.pinlockview.PinLockListener; +import com.andrognito.pinlockview.PinLockView; + +public class SampleActivity2 extends AppCompatActivity { + + public static final String TAG = "PinLockView"; + + private PinLockView mPinLockView; + private IndicatorDots mIndicatorDots; + + private PinLockListener mPinLockListener = new PinLockListener() { + @Override + public void onComplete(String pin) { + Log.d(TAG, "Pin complete: " + pin); + } + + @Override + public void onEmpty() { + Log.d(TAG, "Pin empty"); + } + + @Override + public void onPinChange(int pinLength, String intermediatePin) { + Log.d(TAG, "Pin changed, new length " + pinLength + " with intermediate pin " + intermediatePin); + } + }; + + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + requestWindowFeature(Window.FEATURE_NO_TITLE); + getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN); + setContentView(R.layout.activity_sample2); + + mPinLockView = (PinLockView) findViewById(R.id.pin_lock_view); + mIndicatorDots = (IndicatorDots) findViewById(R.id.indicator_dots); + + mPinLockView.attachIndicatorDots(mIndicatorDots); + mPinLockView.setPinLockListener(mPinLockListener); + mPinLockView.setOnClickButtonLeftListener(new LeftButtonClickListener() { + @Override + public void onLeftButtonClicked(PinLockAdapter.LeftButtonViewHolder numberViewHolder) { + + } + }); + + mPinLockView.setPinLength(6); + mPinLockView.setTextColor(getResources().getColor(R.color.white)); + } +} diff --git a/app/src/main/res/drawable-v21/selector_button_passcode_background.xml b/app/src/main/res/drawable-v21/selector_button_passcode_background.xml new file mode 100644 index 00000000..89443206 --- /dev/null +++ b/app/src/main/res/drawable-v21/selector_button_passcode_background.xml @@ -0,0 +1,8 @@ + + + + + + diff --git a/app/src/main/res/drawable-v21/selector_mask_oval.xml b/app/src/main/res/drawable-v21/selector_mask_oval.xml new file mode 100644 index 00000000..3d8f0ede --- /dev/null +++ b/app/src/main/res/drawable-v21/selector_mask_oval.xml @@ -0,0 +1,5 @@ + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/selector_button_passcode_background.xml b/app/src/main/res/drawable/selector_button_passcode_background.xml new file mode 100644 index 00000000..4a7c379c --- /dev/null +++ b/app/src/main/res/drawable/selector_button_passcode_background.xml @@ -0,0 +1,10 @@ + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/shape_button_passcode_background_focused.xml b/app/src/main/res/drawable/shape_button_passcode_background_focused.xml new file mode 100644 index 00000000..3e03620b --- /dev/null +++ b/app/src/main/res/drawable/shape_button_passcode_background_focused.xml @@ -0,0 +1,12 @@ + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/shape_button_passcode_background_normal.xml b/app/src/main/res/drawable/shape_button_passcode_background_normal.xml new file mode 100644 index 00000000..324efce4 --- /dev/null +++ b/app/src/main/res/drawable/shape_button_passcode_background_normal.xml @@ -0,0 +1,8 @@ + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/shape_button_passcode_background_pressed.xml b/app/src/main/res/drawable/shape_button_passcode_background_pressed.xml new file mode 100644 index 00000000..f3013281 --- /dev/null +++ b/app/src/main/res/drawable/shape_button_passcode_background_pressed.xml @@ -0,0 +1,9 @@ + + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/shape_indicator_empty.xml b/app/src/main/res/drawable/shape_indicator_empty.xml new file mode 100644 index 00000000..c7194dcc --- /dev/null +++ b/app/src/main/res/drawable/shape_indicator_empty.xml @@ -0,0 +1,8 @@ + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/shape_indicator_select.xml b/app/src/main/res/drawable/shape_indicator_select.xml new file mode 100644 index 00000000..ce2058fb --- /dev/null +++ b/app/src/main/res/drawable/shape_indicator_select.xml @@ -0,0 +1,5 @@ + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/activity_sample.xml b/app/src/main/res/layout/activity_sample.xml index f86f1038..8fd5190b 100644 --- a/app/src/main/res/layout/activity_sample.xml +++ b/app/src/main/res/layout/activity_sample.xml @@ -1,52 +1,72 @@ - - - - - - - - - - - + + + + + + +