UI调整
This commit is contained in:
parent
1ed84b8b79
commit
f1f144ec32
|
|
@ -8,6 +8,7 @@ import android.view.View;
|
|||
import android.view.ViewGroup;
|
||||
import android.view.Window;
|
||||
import android.view.WindowManager;
|
||||
import android.widget.LinearLayout;
|
||||
import android.widget.TextView;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
|
|
@ -35,6 +36,8 @@ public class BottomChoiceDialog extends DialogFragment implements View.OnClickLi
|
|||
return dialog;
|
||||
}
|
||||
|
||||
public static ConnectType curType;
|
||||
|
||||
public static BottomChoiceDialog newInstance() {
|
||||
if (bottomChoiceDialog == null) {
|
||||
bottomChoiceDialog = new BottomChoiceDialog();
|
||||
|
|
@ -46,6 +49,9 @@ public class BottomChoiceDialog extends DialogFragment implements View.OnClickLi
|
|||
private TextView tvAP;
|
||||
private TextView tvAirKiss;
|
||||
private TextView tvCancel;
|
||||
private LinearLayout lineAirKiss;
|
||||
private LinearLayout lineSmartConfig;
|
||||
private LinearLayout lineAP;
|
||||
|
||||
@Nullable
|
||||
@Override
|
||||
|
|
@ -56,11 +62,16 @@ public class BottomChoiceDialog extends DialogFragment implements View.OnClickLi
|
|||
tvAP = (TextView) view.findViewById(R.id.tv_AP);
|
||||
tvAirKiss = (TextView) view.findViewById(R.id.tv_airkiss);
|
||||
tvCancel = (TextView) view.findViewById(R.id.tv_cancel);
|
||||
lineAirKiss = (LinearLayout) view.findViewById(R.id.line_airKiss);
|
||||
lineSmartConfig = (LinearLayout) view.findViewById(R.id.line_smartConfig);
|
||||
lineAP = (LinearLayout) view.findViewById(R.id.line_AP);
|
||||
|
||||
tvSmartConfig.setOnClickListener(this);
|
||||
tvAP.setOnClickListener(this);
|
||||
tvAirKiss.setOnClickListener(this);
|
||||
tvCancel.setOnClickListener(this);
|
||||
|
||||
switchChooseUI(curType);
|
||||
return view;
|
||||
|
||||
}
|
||||
|
|
@ -123,6 +134,27 @@ public class BottomChoiceDialog extends DialogFragment implements View.OnClickLi
|
|||
}
|
||||
}
|
||||
|
||||
public void switchChooseUI(ConnectType curConnectType) {
|
||||
lineAirKiss.setVisibility(View.VISIBLE);
|
||||
lineAP.setVisibility(View.VISIBLE);
|
||||
lineSmartConfig.setVisibility(View.VISIBLE);
|
||||
switch (curConnectType) {
|
||||
case SmartConfig:
|
||||
// 处理SmartConfig逻辑
|
||||
lineSmartConfig.setVisibility(View.GONE);
|
||||
break;
|
||||
case APConnect:
|
||||
// 处理APConnect逻辑
|
||||
lineAP.setVisibility(View.GONE);
|
||||
break;
|
||||
case AirKiss:
|
||||
lineAirKiss.setVisibility(View.GONE);
|
||||
// 处理AirKiss逻辑
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public interface OnChooseClickListener {
|
||||
void smartConfigConnect();//智能连接
|
||||
|
||||
|
|
|
|||
|
|
@ -11,6 +11,7 @@ import android.text.TextUtils;
|
|||
import android.view.View;
|
||||
import android.view.Window;
|
||||
import android.widget.Button;
|
||||
import android.widget.ProgressBar;
|
||||
import android.widget.TextView;
|
||||
|
||||
import androidx.appcompat.app.AppCompatActivity;
|
||||
|
|
@ -183,7 +184,7 @@ public class CheckWifiUtil {
|
|||
return wifissid;
|
||||
}
|
||||
|
||||
public void checkCurAP(AppCompatActivity activity, String wifiName, String wifiPwd, String devicetype) {
|
||||
public void checkCurAP(AppCompatActivity activity, String wifiName, String wifiPwd, String devicetype, ProgressBar progressLoading, TextView tvApConnectDevice) {
|
||||
String wifissid = getCurWifiSsid(activity);
|
||||
if (TextUtils.isEmpty(wifissid)) {
|
||||
wifissid = "";
|
||||
|
|
@ -194,6 +195,7 @@ public class CheckWifiUtil {
|
|||
if ("camera".equals(devicetype)) {
|
||||
if (!wifissid.startsWith("GW_AP_")) {
|
||||
ToastUtil.show(activity.getApplicationContext(), "请先连接摄像头设备热点");
|
||||
resetAPLayout(progressLoading,tvApConnectDevice);
|
||||
return;
|
||||
}
|
||||
//todo 摄像头
|
||||
|
|
@ -201,6 +203,7 @@ public class CheckWifiUtil {
|
|||
} else if ("pet".equals(devicetype)) {
|
||||
if (!wifissid.startsWith("ifish-")) {
|
||||
ToastUtil.show(activity.getApplicationContext(), "请先连接宠物笼设备热点");
|
||||
resetAPLayout(progressLoading,tvApConnectDevice);
|
||||
return;
|
||||
}
|
||||
//todo 宠物
|
||||
|
|
@ -208,6 +211,7 @@ public class CheckWifiUtil {
|
|||
} else {
|
||||
if (!wifissid.startsWith("ifish-")) {
|
||||
ToastUtil.show(activity.getApplicationContext(), "请先连接设备热点");
|
||||
resetAPLayout(progressLoading,tvApConnectDevice);
|
||||
return;
|
||||
}
|
||||
//todo 设备
|
||||
|
|
@ -216,6 +220,7 @@ public class CheckWifiUtil {
|
|||
|
||||
if (wifissid.equals(wifiName)) {
|
||||
ToastUtil.show(activity.getApplicationContext(), "WiFi名称不能和热点名称一致");
|
||||
resetAPLayout(progressLoading,tvApConnectDevice);
|
||||
return;
|
||||
}
|
||||
|
||||
|
|
@ -227,4 +232,9 @@ public class CheckWifiUtil {
|
|||
|
||||
}
|
||||
|
||||
private void resetAPLayout(ProgressBar progressLoading, TextView tvApConnectDevice) {
|
||||
progressLoading.setVisibility(View.GONE);
|
||||
tvApConnectDevice.setVisibility(View.VISIBLE);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -27,6 +27,7 @@ import com.ifish.activity.BindTankPetActivity;
|
|||
import com.ifish.activity.R;
|
||||
import com.ifish.basebean.ConnectMessageEvent;
|
||||
import com.ifish.utils.AnimationUtil;
|
||||
import com.ifish.utils.ClickUtil;
|
||||
import com.ifish.utils.KVUtil;
|
||||
import com.ifish.utils.ToastUtil;
|
||||
import com.ifish.utils.WifiAdmin;
|
||||
|
|
@ -57,9 +58,6 @@ public class NewBindDeviceActivity extends AppCompatActivity {
|
|||
private TextView tvApConnectDevice;
|
||||
|
||||
|
||||
//选择连接类型的底部弹窗
|
||||
private BottomChoiceDialog bottomChoiceDialog;
|
||||
|
||||
//----------------变量区--------------------//
|
||||
private ConnectType curConnectType;//当前选择的连接类型 APConnect,SmartConfig,AirKiss
|
||||
|
||||
|
|
@ -70,6 +68,7 @@ public class NewBindDeviceActivity extends AppCompatActivity {
|
|||
private CheckWifiUtil checkWifiUtil;
|
||||
private AirKissUtil airKissUtil;
|
||||
private String bssid = "";
|
||||
|
||||
@Override
|
||||
protected void onCreate(Bundle savedInstanceState) {
|
||||
super.onCreate(savedInstanceState);
|
||||
|
|
@ -113,12 +112,16 @@ public class NewBindDeviceActivity extends AppCompatActivity {
|
|||
private void initTitle() {
|
||||
TextView title_text = (TextView) findViewById(R.id.title_text);
|
||||
title_text.setText("连接设备");
|
||||
findViewById(R.id.title_img).setOnClickListener(new View.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(View v) {
|
||||
finish();
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
private void initView() {
|
||||
|
||||
bottomChoiceDialog = BottomChoiceDialog.newInstance();
|
||||
|
||||
tvConnectType = (TextView) findViewById(R.id.tv_connect_type);
|
||||
|
||||
frameAp = (FrameLayout) findViewById(R.id.frame_ap);
|
||||
|
|
@ -139,31 +142,36 @@ public class NewBindDeviceActivity extends AppCompatActivity {
|
|||
tvOtherConnect.setOnClickListener(new View.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(View v) {
|
||||
if (bottomChoiceDialog != null && !bottomChoiceDialog.isAdded()) {
|
||||
bottomChoiceDialog.show(getSupportFragmentManager(), "选择连接类型");
|
||||
if (ClickUtil.isFastDoubleClick()) {
|
||||
LogUtils.d("LHD 防止快速点击");
|
||||
return;
|
||||
}
|
||||
}
|
||||
});
|
||||
bottomChoiceDialog.setOnChooseClickListener(new BottomChoiceDialog.OnChooseClickListener() {
|
||||
@Override
|
||||
public void smartConfigConnect() {
|
||||
//智能连接逻辑
|
||||
curConnectType = ConnectType.SmartConfig;
|
||||
switchUIConnectType(curConnectType);
|
||||
}
|
||||
//选择连接类型的底部弹窗
|
||||
BottomChoiceDialog.curType = curConnectType;
|
||||
BottomChoiceDialog bottomChoiceDialog = BottomChoiceDialog.newInstance();
|
||||
bottomChoiceDialog.show(getSupportFragmentManager(), "选择连接类型");
|
||||
bottomChoiceDialog.setOnChooseClickListener(new BottomChoiceDialog.OnChooseClickListener() {
|
||||
@Override
|
||||
public void smartConfigConnect() {
|
||||
//智能连接逻辑
|
||||
curConnectType = ConnectType.SmartConfig;
|
||||
switchUIConnectType(curConnectType);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void APConnect() {
|
||||
//AP连接逻辑
|
||||
curConnectType = ConnectType.APConnect;
|
||||
switchUIConnectType(curConnectType);
|
||||
}
|
||||
@Override
|
||||
public void APConnect() {
|
||||
//AP连接逻辑
|
||||
curConnectType = ConnectType.APConnect;
|
||||
switchUIConnectType(curConnectType);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void AirKissConnect() {
|
||||
//airKiss逻辑
|
||||
curConnectType = ConnectType.AirKiss;
|
||||
switchUIConnectType(curConnectType);
|
||||
@Override
|
||||
public void AirKissConnect() {
|
||||
//airKiss逻辑
|
||||
curConnectType = ConnectType.AirKiss;
|
||||
switchUIConnectType(curConnectType);
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
tvClickButton.setOnClickListener(new View.OnClickListener() {
|
||||
|
|
@ -233,7 +241,7 @@ public class NewBindDeviceActivity extends AppCompatActivity {
|
|||
switch (connectType) {
|
||||
case SmartConfig:
|
||||
// 处理SmartConfig逻辑
|
||||
tvConnectType.setText("智能连网");
|
||||
tvConnectType.setText("快捷连网");
|
||||
tvClickButton.setText("确定");
|
||||
tvTips.setText("1、插座仅支持2.4G的WiFi网络,不支持5G及双频合一的网络(需在路由器设置中分开)\n2、先长按插座复位键3秒,松手后红灯绿灯同时闪烁,再点确定按钮。\n3、如多次尝试一键连网都不成功,可切换其他连网方式,每次重新连接时插座需断一次电然后重新复位连接。");
|
||||
break;
|
||||
|
|
@ -245,8 +253,8 @@ public class NewBindDeviceActivity extends AppCompatActivity {
|
|||
ToastUtil.show(this, "切换到AP连网");
|
||||
break;
|
||||
case AirKiss:
|
||||
tvConnectType.setText("AirKiss连网");
|
||||
ToastUtil.show(this, "AirKiss连网");
|
||||
tvConnectType.setText("一键连网");
|
||||
ToastUtil.show(this, "一键连网");
|
||||
tvClickButton.setText("确定");
|
||||
tvTips.setText("1、插座仅支持2.4G的WiFi网络,不支持5G及双频合一的网络(需在路由器设置中分开)\n2、先长按插座复位键3秒,松手后红灯绿灯同时闪烁,再点确定按钮。\n3、如多次尝试一键连网都不成功,可切换其他连网方式,每次重新连接时插座需断一次电然后重新复位连接。");
|
||||
// 处理AirKiss逻辑
|
||||
|
|
@ -284,7 +292,7 @@ public class NewBindDeviceActivity extends AppCompatActivity {
|
|||
intent.putExtra("title", "连接热流器");
|
||||
}
|
||||
//新页面跳转
|
||||
intent.putExtra("wifiPassword",pwd);
|
||||
intent.putExtra("wifiPassword", pwd);
|
||||
ToastUtil.show(NewBindDeviceActivity.this, "开始SmartConfig连网...");
|
||||
startActivity(intent);
|
||||
AnimationUtil.startAnimation(NewBindDeviceActivity.this);
|
||||
|
|
@ -297,7 +305,7 @@ public class NewBindDeviceActivity extends AppCompatActivity {
|
|||
case AirKiss:
|
||||
// 处理AirKiss逻辑
|
||||
ToastUtil.show(NewBindDeviceActivity.this, "开始AirKiss连网...");
|
||||
airKissUtil.connectDeviceByAirKiss(this,ssid,bssid,pwd);
|
||||
airKissUtil.connectDeviceByAirKiss(this, ssid, bssid, pwd);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
|
@ -321,7 +329,7 @@ public class NewBindDeviceActivity extends AppCompatActivity {
|
|||
if (isJump) {
|
||||
String wifiName = tvWifiName.getText().toString();
|
||||
String wifiPwd = tvWifiPwd.getText().toString();
|
||||
checkWifiUtil.checkCurAP(this, wifiName, wifiPwd, devicetype);
|
||||
checkWifiUtil.checkCurAP(this, wifiName, wifiPwd, devicetype,progressLoading,tvApConnectDevice);
|
||||
isJump = false;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -0,0 +1,24 @@
|
|||
package com.ifish.utils;
|
||||
|
||||
import android.view.View;
|
||||
|
||||
public class ClickUtil {
|
||||
|
||||
private static long lastClickTime;
|
||||
|
||||
public static boolean isFastDoubleClick() {
|
||||
return isFastDoubleClick(300);
|
||||
}
|
||||
|
||||
public static boolean isFastDoubleClick(long interval) {
|
||||
long time = System.currentTimeMillis();
|
||||
long timeD = time - lastClickTime;
|
||||
if (0 < timeD && timeD < interval) {
|
||||
lastClickTime = time;
|
||||
return true;
|
||||
}
|
||||
lastClickTime = time;
|
||||
return false;
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -5,54 +5,77 @@
|
|||
android:background="@drawable/white_radius10"
|
||||
android:orientation="vertical">
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tv_airkiss"
|
||||
<LinearLayout
|
||||
android:id="@+id/line_airKiss"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="50dp"
|
||||
android:gravity="center"
|
||||
android:text="一键联网"
|
||||
android:textColor="#3E3A39"
|
||||
android:textSize="16sp" />
|
||||
android:layout_height="wrap_content"
|
||||
android:orientation="vertical">
|
||||
|
||||
<View
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="0.5dp"
|
||||
android:background="#efedee" />
|
||||
<TextView
|
||||
android:id="@+id/tv_smartConfig"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="50dp"
|
||||
android:gravity="center"
|
||||
android:text="快捷联网"
|
||||
android:textColor="#3E3A39"
|
||||
android:textSize="16sp" />
|
||||
<TextView
|
||||
android:id="@+id/tv_airkiss"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="50dp"
|
||||
android:gravity="center"
|
||||
android:text="一键联网"
|
||||
android:textColor="#3E3A39"
|
||||
android:textSize="16sp" />
|
||||
|
||||
<View
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="0.5dp"
|
||||
android:background="#efedee" />
|
||||
<View
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="0.5dp"
|
||||
android:background="#efedee" />
|
||||
</LinearLayout>
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tv_AP"
|
||||
<LinearLayout
|
||||
android:id="@+id/line_smartConfig"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="50dp"
|
||||
android:gravity="center"
|
||||
android:text="AP联网"
|
||||
android:textColor="#3E3A39"
|
||||
android:textSize="16sp" />
|
||||
android:layout_height="wrap_content"
|
||||
android:orientation="vertical">
|
||||
|
||||
<View
|
||||
<TextView
|
||||
android:id="@+id/tv_smartConfig"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="50dp"
|
||||
android:gravity="center"
|
||||
android:text="快捷联网"
|
||||
android:textColor="#3E3A39"
|
||||
android:textSize="16sp" />
|
||||
|
||||
<View
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="0.5dp"
|
||||
android:background="#efedee" />
|
||||
</LinearLayout>
|
||||
|
||||
<LinearLayout
|
||||
android:id="@+id/line_AP"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="0.5dp"
|
||||
android:background="#efedee" />
|
||||
android:layout_height="wrap_content"
|
||||
android:orientation="vertical">
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tv_AP"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="50dp"
|
||||
android:gravity="center"
|
||||
android:text="AP联网"
|
||||
android:textColor="#3E3A39"
|
||||
android:textSize="16sp" />
|
||||
|
||||
<View
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="0.5dp"
|
||||
android:background="#efedee" />
|
||||
</LinearLayout>
|
||||
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tv_cancel"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="50dp"
|
||||
android:layout_marginBottom="20dp"
|
||||
android:gravity="center"
|
||||
android:text="取消"
|
||||
android:layout_marginBottom="20dp"
|
||||
android:textColor="#3E3A39"
|
||||
android:textSize="16sp" />
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue