From ec29cf3f9e0f10a8210959796fc7e0aec64138b1 Mon Sep 17 00:00:00 2001 From: MTing Date: Thu, 28 Aug 2025 10:00:12 +0800 Subject: [PATCH] add code --- .../main/java/com/ouxuan/oxface/MainActivity.java | 48 ++++++++++++++++++++-- app/src/main/res/layout/dialog_login_success.xml | 4 +- 2 files changed, 47 insertions(+), 5 deletions(-) diff --git a/app/src/main/java/com/ouxuan/oxface/MainActivity.java b/app/src/main/java/com/ouxuan/oxface/MainActivity.java index 3fa5db9..f5641d7 100644 --- a/app/src/main/java/com/ouxuan/oxface/MainActivity.java +++ b/app/src/main/java/com/ouxuan/oxface/MainActivity.java @@ -6,6 +6,8 @@ import android.app.Dialog; import android.graphics.Color; import android.graphics.drawable.ColorDrawable; import android.os.Bundle; +import android.os.Handler; +import android.os.Looper; import android.text.InputType; import android.view.MotionEvent; import android.view.View; @@ -13,7 +15,9 @@ import android.view.Window; import android.widget.ArrayAdapter; import android.widget.EditText; import android.widget.ImageView; +import android.widget.ProgressBar; import android.widget.Spinner; +import android.widget.TextView; import android.widget.Toast; public class MainActivity extends AppCompatActivity { @@ -234,9 +238,9 @@ public class MainActivity extends AppCompatActivity { showToast("请选择设备"); } else { String selectedPlatform = platforms[selectedPosition]; - showToast("进入 " + selectedPlatform + " 成功!"); - dialog.dismiss(); - // 这里可以添加跳转到主界面的逻辑 + + // 显示loading动画 + showLoadingInDialog(dialog, buttonEnter, selectedPlatform); } } }); @@ -244,4 +248,42 @@ public class MainActivity extends AppCompatActivity { // 显示弹框 dialog.show(); } + + /** + * 在弹框中显示loading动画 + * @param dialog 弹框实例 + * @param buttonEnter 进入按钮 + * @param selectedPlatform 选中的平台 + */ + private void showLoadingInDialog(Dialog dialog, View buttonEnter, String selectedPlatform) { + // 禁用按钮防止重复点击 + buttonEnter.setEnabled(false); + // 禁用设置平台选择下拉框 + Spinner spinnerPlatform = dialog.findViewById(R.id.spinnerPlatform); + spinnerPlatform.setEnabled(false); + + + // 保存原始按钮文字 + TextView buttonText = (TextView) buttonEnter; + String originalText = buttonText.getText().toString(); + + // 显示loading文字 + buttonText.setText("正在进入..."); + + // 使用Handler延时5秒后执行 + new Handler(Looper.getMainLooper()).postDelayed(new Runnable() { + @Override + public void run() { + // 恢复按钮状态 + buttonEnter.setEnabled(true); + buttonText.setText(originalText); + + // 显示成功消息并关闭弹框 + showToast("进入 " + selectedPlatform + " 成功!"); + dialog.dismiss(); + + // 这里可以添加跳转到主界面的逻辑 + } + }, 5000); // 5秒延时 + } } \ No newline at end of file diff --git a/app/src/main/res/layout/dialog_login_success.xml b/app/src/main/res/layout/dialog_login_success.xml index 602c62a..a258cb7 100644 --- a/app/src/main/res/layout/dialog_login_success.xml +++ b/app/src/main/res/layout/dialog_login_success.xml @@ -90,7 +90,7 @@