Browse Source

change xml

main
MTing 1 week ago
parent
commit
75c7632e8d
  1. 101
      app/src/main/java/com/ouxuan/oxface/OXFaceOnlineActivity.java
  2. 12
      app/src/main/res/drawable/rounded_button_background.xml
  3. 12
      app/src/main/res/drawable/rounded_store_name_background.xml
  4. 34
      app/src/main/res/layout/activity_oxface_online.xml

101
app/src/main/java/com/ouxuan/oxface/OXFaceOnlineActivity.java

@ -1,6 +1,7 @@
package com.ouxuan.oxface;
import android.content.Context;
import android.content.Intent;
import android.content.pm.PackageManager;
import android.graphics.Bitmap;
import android.graphics.Canvas;
@ -37,6 +38,7 @@ import com.baidu.idl.face.main.finance.utils.FaceOnDrawTexturViewUtil;
import com.baidu.idl.face.main.finance.utils.TestPopWindow;
import com.baidu.idl.main.facesdk.FaceInfo;
import com.baidu.idl.main.facesdk.model.BDFaceImageInstance;
import com.ouxuan.oxface.data.DeviceSelectDataManager;
import com.ouxuan.oxface.utils.LogManager;
import java.util.List;
@ -148,6 +150,13 @@ public class OXFaceOnlineActivity extends BaseActivity implements View.OnClickLi
private Button btnVerificationCode;
private Button btnScannerDoor;
// 新增店铺名称相关变量
private TextView tvStoreName;
private int storeNameClickCount = 0;
private long lastStoreNameClickTime = 0;
private static final int MAX_CLICK_COUNT = 5;
private static final long CLICK_INTERVAL = 1000; // 1秒内点击有效
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
@ -205,9 +214,26 @@ public class OXFaceOnlineActivity extends BaseActivity implements View.OnClickLi
// mDrawDetectFaceView.setRotationY(0);
}
// 返回
// 店铺名称显示
tvStoreName = findViewById(R.id.tv_store_name);
if (tvStoreName != null) {
// 设置点击事件监听器
tvStoreName.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
handleStoreNameClick();
}
});
// 获取并显示店铺名称
loadAndDisplayStoreName();
}
// 返回按钮隐藏但仍保留引用
ImageView mButReturn = findViewById(R.id.btn_back);
mButReturn.setOnClickListener(this);
if (mButReturn != null) {
mButReturn.setOnClickListener(this);
}
// 初始化二维码区域控件
imgMiniProgramCode = findViewById(R.id.img_mini_program_code);
@ -1121,4 +1147,75 @@ public class OXFaceOnlineActivity extends BaseActivity implements View.OnClickLi
}
}, 30000);
}
/**
* 获取并显示店铺名称
*/
private void loadAndDisplayStoreName() {
try {
DeviceSelectDataManager deviceDataManager = DeviceSelectDataManager.getInstance(this);
String[] storeInfo = deviceDataManager.getStoreInfo();
String storeName = storeInfo[0]; // 第一个元素是店铺名称
if (storeName != null && !storeName.isEmpty()) {
tvStoreName.setText(storeName);
LogManager.logInfo(TAG, "成功显示店铺名称: " + storeName);
} else {
tvStoreName.setText("未获取到店铺名称");
LogManager.logWarning(TAG, "未获取到店铺名称");
}
} catch (Exception e) {
tvStoreName.setText("店铺名称获取失败");
LogManager.logError(TAG, "获取店铺名称失败", e);
}
}
/**
* 处理店铺名称点击事件
*/
private void handleStoreNameClick() {
long currentTime = System.currentTimeMillis();
// 如果距离上次点击时间超过1秒重置计数器
if (currentTime - lastStoreNameClickTime > CLICK_INTERVAL) {
storeNameClickCount = 0;
}
storeNameClickCount++;
lastStoreNameClickTime = currentTime;
LogManager.logDebug(TAG, "店铺名称被点击,当前计数: " + storeNameClickCount);
// 如果连续点击达到5次
if (storeNameClickCount >= MAX_CLICK_COUNT) {
LogManager.logInfo(TAG, "连续点击5次店铺名称,准备返回主界面");
Toast.makeText(this, "即将返回主界面", Toast.LENGTH_SHORT).show();
// 重置计数器
storeNameClickCount = 0;
// 延迟一段时间后返回主界面
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
returnToMainActivity();
}
}, 500); // 延迟0.5秒后返回
} else if (storeNameClickCount >= 3) {
// 当点击次数达到3次时提示用户还需几次点击
int remainingClicks = MAX_CLICK_COUNT - storeNameClickCount;
Toast.makeText(this, "再点击" + remainingClicks + "次返回主界面", Toast.LENGTH_SHORT).show();
}
}
/**
* 返回主界面
*/
private void returnToMainActivity() {
LogManager.logInfo(TAG, "返回主界面");
Intent intent = new Intent(this, MainActivity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);
finish();
}
}

12
app/src/main/res/drawable/rounded_button_background.xml

@ -0,0 +1,12 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<!-- 填充的颜色 -->
<solid android:color="#80000000" />
<!-- 设置按钮的四个角为弧形 -->
<!-- android:radius 弧形的半径 -->
<corners android:radius="2dp" />
</shape>

12
app/src/main/res/drawable/rounded_store_name_background.xml

@ -0,0 +1,12 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<!-- 填充的颜色 -->
<solid android:color="#80000000" />
<!-- 设置按钮的四个角为弧形 -->
<!-- android:radius 弧形的半径 -->
<corners android:radius="4dp" />
</shape>

34
app/src/main/res/layout/activity_oxface_online.xml

@ -183,7 +183,23 @@
android:id="@+id/finance_by_living_detection"
android:visibility="gone" />
<!-- 返回按钮 -->
<!-- 店铺名称显示区域,替换原来的返回按钮 -->
<TextView
android:id="@+id/tv_store_name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_alignParentLeft="true"
android:layout_marginTop="16dp"
android:layout_marginLeft="16dp"
android:text="店铺名称"
android:textColor="#FFFFFF"
android:textSize="12sp"
android:padding="6dp"
android:background="@drawable/rounded_store_name_background"
android:visibility="visible" />
<!-- 隐藏原来的返回按钮 -->
<ImageView
android:id="@+id/btn_back"
android:layout_width="wrap_content"
@ -193,7 +209,7 @@
android:layout_marginTop="20dp"
android:layout_marginLeft="20dp"
android:src="@mipmap/ic_finance_back"
android:visibility="visible" />
android:visibility="gone" />
<RelativeLayout
android:id="@+id/layout_compare_status"
@ -224,7 +240,7 @@
android:layout_alignParentBottom="true"
android:layout_marginStart="16dp"
android:layout_marginEnd="16dp"
android:layout_marginBottom="80dp"
android:layout_marginBottom="60dp"
android:background="#80000000">
<!-- 二维码区域 - 添加在底部按钮上方 -->
@ -297,7 +313,7 @@
android:layout_width="wrap_content"
android:layout_height="28dp"
android:layout_marginBottom="10dp"
android:background="#4CAF50"
android:background="@drawable/rounded_button_background"
android:minHeight="40dp"
android:text="验证码开门"
android:textColor="#FFFFFF"
@ -307,7 +323,7 @@
android:id="@+id/btn_scanner_door"
android:layout_width="wrap_content"
android:layout_height="28dp"
android:background="#2196F3"
android:background="@drawable/rounded_button_background"
android:minHeight="40dp"
android:text="扫码器开门"
android:textColor="#FFFFFF"
@ -357,13 +373,13 @@
<!-- 独立的开门按钮,放在屏幕左下角 -->
<Button
android:id="@+id/button_open_door"
android:layout_width="120dp"
android:layout_width="90dp"
android:layout_height="wrap_content"
android:text="开门"
android:textSize="18sp"
android:textSize="14sp"
android:textColor="#FFFFFF"
android:background="#009688"
android:minHeight="50dp"
android:background="@drawable/rounded_button_background"
android:minHeight="30dp"
android:layout_alignParentBottom="true"
android:layout_alignParentStart="true"
android:layout_marginStart="16dp"

Loading…
Cancel
Save