Drew 6 年之前
父節點
當前提交
5c5d4c60c1

+ 1 - 1
app/build.gradle

@@ -33,6 +33,6 @@ dependencies {
     implementation "android.arch.lifecycle:extensions:1.1.3"
     implementation 'com.jakewharton:butterknife:10.2.0'
     annotationProcessor 'com.jakewharton:butterknife-compiler:10.2.0'
-    implementation 'com.kaopiz:kprogresshud:1.2.0'
     implementation 'org.greenrobot:eventbus:3.1.1'
+    implementation 'com.github.GrenderG:Toasty:1.4.2'
 }

+ 1 - 0
app/src/main/AndroidManifest.xml

@@ -6,6 +6,7 @@
     <uses-permission android:name="android.permission.INTERNET" />
 
     <application
+        android:name=".MyApplication"
         android:allowBackup="true"
         android:icon="@mipmap/ic_launcher"
         android:label="@string/app_name"

+ 5 - 0
app/src/main/java/com/ht/gate/LoginActivity.java

@@ -76,9 +76,14 @@ public class LoginActivity extends AppCompatActivity {
                         unlockView.setVisibility(View.VISIBLE);
                         break;
                     case CustomKeyboardView.KEYCODE_DONE:
+                        String roomNo = "";
+                        if (et.getText().toString().contains("-")) {
+                            roomNo = et.getText().toString().split("-")[et.getText().toString().split("-").length - 1];
+                        }
                         getSharedPreferences(SettingsActivity.PREF_NAME_SETTINGS, MODE_PRIVATE)
                                 .edit()
                                 .putString(SettingsActivity.PREF_KEY_SPACE_ID, et.getText().toString())
+                                .putString(SettingsActivity.PREF_KEY_ROOM_NO, roomNo)
                                 .apply();
                         startActivity(new Intent(LoginActivity.this, MainActivity.class));
                         finish();

+ 11 - 3
app/src/main/java/com/ht/gate/MainActivity.java

@@ -1,7 +1,9 @@
 package com.ht.gate;
 
 import androidx.appcompat.app.AppCompatActivity;
+import androidx.core.content.ContextCompat;
 
+import android.annotation.SuppressLint;
 import android.content.ComponentName;
 import android.content.Intent;
 import android.content.ServiceConnection;
@@ -9,10 +11,12 @@ import android.content.SharedPreferences;
 import android.os.Bundle;
 import android.os.IBinder;
 import android.util.Log;
+import android.view.Gravity;
 import android.view.View;
 import android.widget.TextView;
 import android.widget.Toast;
 
+
 import org.greenrobot.eventbus.EventBus;
 import org.greenrobot.eventbus.Subscribe;
 import org.greenrobot.eventbus.ThreadMode;
@@ -20,6 +24,7 @@ import org.greenrobot.eventbus.ThreadMode;
 import butterknife.BindView;
 import butterknife.ButterKnife;
 import butterknife.OnClick;
+import es.dmoral.toasty.Toasty;
 
 public class MainActivity extends AppCompatActivity {
     private static final String TAG = "MainActivity";
@@ -28,6 +33,8 @@ public class MainActivity extends AppCompatActivity {
     UnlockView unlockView;
     @BindView(R.id.tv_space_name)
     TextView tvSpaceName;
+    @BindView(R.id.tv_room_no)
+    TextView tvRoomNo;
 
     private SharedPreferences sharedPreferences;
     private DoorService.DoorBinder mDoorBinder;
@@ -63,14 +70,14 @@ public class MainActivity extends AppCompatActivity {
 
                 @Override
                 public void onConfirm(PasswordDialog dialog, String password) {
+                    dialog.dismiss();
                     if (password.equals("8888")) {
-                        dialog.dismiss();
                         if (mDoorBinder != null) {
                             mDoorBinder.getService().openDoor();
                         }
-                        startActivity(new Intent(MainActivity.this, WelcomeActivity.class));
                     } else {
-                        Toast.makeText(MainActivity.this, "密码错误", Toast.LENGTH_SHORT).show();
+                        Toasty.normal(MainActivity.this, "密码错误", ContextCompat.getDrawable(MainActivity.this, R.mipmap.toast_icon_warn_fill))
+                                .show();
                     }
                 }
             });
@@ -109,6 +116,7 @@ public class MainActivity extends AppCompatActivity {
                 | View.SYSTEM_UI_FLAG_IMMERSIVE;
         decorView.setSystemUiVisibility(uiOptions);
         tvSpaceName.setText(sharedPreferences.getString(SettingsActivity.PREF_KEY_SPACE_NAME, ""));
+        tvRoomNo.setText(sharedPreferences.getString(SettingsActivity.PREF_KEY_ROOM_NO, ""));
         updateStatus();
     }
 

+ 17 - 0
app/src/main/java/com/ht/gate/MyApplication.java

@@ -0,0 +1,17 @@
+package com.ht.gate;
+
+import android.app.Application;
+import android.content.SharedPreferences;
+
+public class MyApplication extends Application {
+    @Override
+    public void onCreate() {
+        super.onCreate();
+        SharedPreferences sharedPreferences = getSharedPreferences(SettingsActivity.PREF_NAME_SETTINGS, MODE_PRIVATE);
+        String spaceName = sharedPreferences.getString(SettingsActivity.PREF_KEY_SPACE_NAME, null);
+        if (spaceName == null) {
+            spaceName = "财富管理室";
+            sharedPreferences.edit().putString(SettingsActivity.PREF_KEY_SPACE_NAME, spaceName).apply();
+        }
+    }
+}

+ 11 - 0
app/src/main/java/com/ht/gate/PasswordDialog.java

@@ -5,6 +5,7 @@ import android.content.Intent;
 import android.os.Bundle;
 import android.os.Handler;
 import android.text.TextUtils;
+import android.util.TypedValue;
 import android.view.Gravity;
 import android.view.View;
 import android.view.Window;
@@ -121,6 +122,11 @@ public class PasswordDialog extends AppCompatDialog {
                         }
                         mHandler.removeMessages(MSG_HIDE_PASSWORD);
                         mHandler.sendEmptyMessageDelayed(MSG_HIDE_PASSWORD, 1000);
+                        if (password.length() == 4) {
+                            if (listener != null) {
+                                listener.onConfirm(PasswordDialog.this, password);
+                            }
+                        }
                         break;
                 }
             }
@@ -139,6 +145,11 @@ public class PasswordDialog extends AppCompatDialog {
             } else {
                 textViews[i].setText("");
             }
+            if (textViews[i].getText().toString().equals("●")) {
+                textViews[i].setTextSize(TypedValue.COMPLEX_UNIT_SP, 20);
+            } else {
+                textViews[i].setTextSize(TypedValue.COMPLEX_UNIT_SP, 37);
+            }
         }
     }
 }

+ 11 - 2
app/src/main/java/com/ht/gate/SettingsActivity.java

@@ -10,6 +10,7 @@ import android.content.ServiceConnection;
 import android.content.SharedPreferences;
 import android.os.Bundle;
 import android.os.IBinder;
+import android.text.InputType;
 import android.util.Log;
 import android.view.View;
 import android.widget.TextView;
@@ -34,6 +35,7 @@ public class SettingsActivity extends AppCompatActivity {
     public static final String PREF_NAME_SETTINGS = "settings";
     public static final String PREF_KEY_SPACE_ID = "spaceId";
     public static final String PREF_KEY_SPACE_NAME = "spaceName";
+    public static final String PREF_KEY_ROOM_NO = "roomNo";
     public static final String PREF_KEY_ADDRESS = "address";
 
     private SharedPreferences sharedPreferences;
@@ -70,7 +72,7 @@ public class SettingsActivity extends AppCompatActivity {
                 | View.SYSTEM_UI_FLAG_FULLSCREEN
                 | View.SYSTEM_UI_FLAG_IMMERSIVE;
         decorView.setSystemUiVisibility(uiOptions);
-        tvTitle.setText("财富管理室" + sharedPreferences.getString(PREF_KEY_SPACE_NAME, ""));
+        tvTitle.setText(sharedPreferences.getString(PREF_KEY_SPACE_NAME, "") + sharedPreferences.getString(PREF_KEY_ROOM_NO, ""));
         tvSpaceId.setText(sharedPreferences.getString(PREF_KEY_SPACE_ID, ""));
         tvSpaceName.setText(sharedPreferences.getString(PREF_KEY_SPACE_NAME, ""));
         tvAddress.setText(sharedPreferences.getString(PREF_KEY_ADDRESS, ""));
@@ -94,6 +96,7 @@ public class SettingsActivity extends AppCompatActivity {
         new PromptBuilder(this)
                 .setTitle("输入空间ID")
                 .setValue(tvSpaceId.getText().toString())
+                .setInputType(InputType.TYPE_CLASS_TEXT)
                 .setPositiveButton("确定")
                 .setNegativeButton("取消")
                 .setPromptListener(new PromptBuilder.PromptListener() {
@@ -106,9 +109,15 @@ public class SettingsActivity extends AppCompatActivity {
                     public void onConfirm(DialogInterface dialog, String value) {
                         dialog.dismiss();
                         tvSpaceId.setText(value);
+                        if (value.contains("-")) {
+                            sharedPreferences.edit()
+                                    .putString(PREF_KEY_ROOM_NO, value.split("-")[value.split("-").length - 1])
+                                    .apply();
+                        }
                         sharedPreferences.edit()
                                 .putString(PREF_KEY_SPACE_ID, value)
                                 .apply();
+                        tvTitle.setText(sharedPreferences.getString(PREF_KEY_SPACE_NAME, "") + sharedPreferences.getString(PREF_KEY_ROOM_NO, ""));
                     }
                 })
                 .show();
@@ -130,11 +139,11 @@ public class SettingsActivity extends AppCompatActivity {
                     @Override
                     public void onConfirm(DialogInterface dialog, String value) {
                         dialog.dismiss();
-                        tvTitle.setText("财富管理室" + value);
                         tvSpaceName.setText(value);
                         sharedPreferences.edit()
                                 .putString(PREF_KEY_SPACE_NAME, value)
                                 .apply();
+                        tvTitle.setText(sharedPreferences.getString(PREF_KEY_SPACE_NAME, "") + sharedPreferences.getString(PREF_KEY_ROOM_NO, ""));
                     }
                 })
                 .show();

+ 4 - 4
app/src/main/res/layout/activity_main.xml

@@ -33,7 +33,7 @@
         app:layout_constraintTop_toTopOf="parent" />
 
     <TextView
-        android:id="@+id/tv1"
+        android:id="@+id/tv_space_name"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
         android:layout_marginTop="61dp"
@@ -47,7 +47,7 @@
         app:layout_constraintTop_toBottomOf="@id/iv_logo" />
 
     <TextView
-        android:id="@+id/tv_space_name"
+        android:id="@+id/tv_room_no"
         android:layout_width="wrap_content"
         android:layout_height="227dp"
         android:fontFamily="@font/fzqkbysjw"
@@ -58,7 +58,7 @@
         android:textSize="208sp"
         app:layout_constraintLeft_toLeftOf="parent"
         app:layout_constraintRight_toRightOf="parent"
-        app:layout_constraintTop_toBottomOf="@id/tv1" />
+        app:layout_constraintTop_toBottomOf="@id/tv_space_name" />
 
     <com.ht.gate.UnlockView
         android:id="@+id/unlock_view"
@@ -67,5 +67,5 @@
         android:layout_marginTop="41dp"
         app:layout_constraintLeft_toLeftOf="parent"
         app:layout_constraintRight_toRightOf="parent"
-        app:layout_constraintTop_toBottomOf="@id/tv_space_name" />
+        app:layout_constraintTop_toBottomOf="@id/tv_room_no" />
 </androidx.constraintlayout.widget.ConstraintLayout>

二進制
app/src/main/res/mipmap-xhdpi/toast_icon_success_fill.png


二進制
app/src/main/res/mipmap-xhdpi/toast_icon_warn_fill.png


二進制
app/src/main/res/mipmap-xxhdpi/toast_icon_success_fill.png


二進制
app/src/main/res/mipmap-xxhdpi/toast_icon_warn_fill.png


二進制
app/src/main/res/mipmap-xxxhdpi/toast_icon_success_fill.png


二進制
app/src/main/res/mipmap-xxxhdpi/toast_icon_warn_fill.png


+ 1 - 2
build.gradle

@@ -4,7 +4,6 @@ buildscript {
     repositories {
         google()
         jcenter()
-        
     }
     dependencies {
         classpath 'com.android.tools.build:gradle:3.5.1'
@@ -18,7 +17,7 @@ allprojects {
     repositories {
         google()
         jcenter()
-        
+        maven { url "https://jitpack.io" }
     }
 }