Commit d2e4fb3b by 李东奇

fix(more): add regex judge for user input

1 parent 217c0979
...@@ -11,6 +11,10 @@ import android.widget.CheckBox; ...@@ -11,6 +11,10 @@ import android.widget.CheckBox;
import android.widget.EditText; import android.widget.EditText;
import android.widget.LinearLayout; import android.widget.LinearLayout;
import android.widget.TextView; import android.widget.TextView;
import android.widget.Toast;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class MoreActivity extends Activity implements View.OnClickListener { public class MoreActivity extends Activity implements View.OnClickListener {
private static String sCurrentItem; private static String sCurrentItem;
...@@ -162,27 +166,27 @@ public class MoreActivity extends Activity implements View.OnClickListener { ...@@ -162,27 +166,27 @@ public class MoreActivity extends Activity implements View.OnClickListener {
switch (moreTypes) { switch (moreTypes) {
case "cpu": case "cpu":
resultData = getTypeData(moreCPU.length); resultData = getTypeData(moreCPU.length);
SystemSetting.setCpuStatus(resultData); if (!resultData[0].equals("-1"))SystemSetting.setCpuStatus(resultData);
break; break;
case "mem": case "mem":
resultData = getTypeData(moreMem.length); resultData = getTypeData(moreMem.length);
SystemSetting.setMemStatus(resultData); if (!resultData[0].equals("-1"))SystemSetting.setMemStatus(resultData);
break; break;
case "storage": case "storage":
resultData = getTypeData(moreStorage.length); resultData = getTypeData(moreStorage.length);
SystemSetting.settorageStatus(resultData); if (!resultData[0].equals("-1"))SystemSetting.settorageStatus(resultData);
break; break;
case "screen": case "screen":
resultData = getTypeData(moreScreen.length); resultData = getTypeData(moreScreen.length);
SystemSetting.setScreenStatus(resultData); if (!resultData[0].equals("-1"))SystemSetting.setScreenStatus(resultData);
break; break;
case "camera": case "camera":
resultData = getTypeData(moreCamera.length); resultData = getTypeData(moreCamera.length);
SystemSetting.setCameraStatus(resultData); if (!resultData[0].equals("-1"))SystemSetting.setCameraStatus(resultData);
break; break;
case "other": case "other":
resultData = getOtherData(moreOther.length); resultData = getOtherData(moreOther.length);
SystemSetting.setOtherStatus(resultData); if (!resultData[0].equals("-1"))SystemSetting.setOtherStatus(resultData);
break; break;
default: default:
break; break;
...@@ -191,12 +195,52 @@ public class MoreActivity extends Activity implements View.OnClickListener { ...@@ -191,12 +195,52 @@ public class MoreActivity extends Activity implements View.OnClickListener {
private String[] getTypeData(int dataLength) { private String[] getTypeData(int dataLength) {
String[] resultData = new String[dataLength]; String[] resultData = new String[dataLength];
for (int i = 0; i < dataLength; i++) { for (int i = 0; i < dataLength; i++) {
resultData[i] = editTxt[i].getText().toString(); String temp = editTxt[i].getText().toString();
if (dataLength==4&&i==0){
if (judgeCPU(temp)){
resultData[i] = temp;
}else{
resultData[0] = "-1";
Toast.makeText(MoreActivity.this, R.string.input_tip_type,Toast.LENGTH_SHORT).show();
}
}else{
if (judgeData(temp)){
resultData[i] = temp;
}else{
resultData[0] = "-1";
Toast.makeText(MoreActivity.this, R.string.input_tip_num,Toast.LENGTH_SHORT).show();
}
}
} }
return resultData; return resultData;
} }
private boolean judgeCPU(String temp) {
boolean flag;
String regEx = "^-?[1-9]\\d{1,5}$";
Pattern pattern = Pattern.compile(regEx);
Matcher matcher = pattern.matcher(temp);
flag = matcher.matches();
return flag;
}
private boolean judgeData(String temp) {
boolean flag;
String regEx = "^-?[1-9]\\d{1,5}$";
Pattern pattern = Pattern.compile(regEx);
Matcher matcher = pattern.matcher(temp);
flag = matcher.matches();
return flag;
}
private String[] getOtherData(int dataLength) { private String[] getOtherData(int dataLength) {
String[] resultData = new String[dataLength]; String[] resultData = new String[dataLength];
for (int i = 0; i < checkBox.length; i++) { for (int i = 0; i < checkBox.length; i++) {
......
...@@ -35,5 +35,7 @@ ...@@ -35,5 +35,7 @@
<string name="header_other_sensor">支持所有传感器</string> <string name="header_other_sensor">支持所有传感器</string>
<string name="header_other_root">支持root</string> <string name="header_other_root">支持root</string>
<string name="header_other_model">产品型号</string> <string name="header_other_model">产品型号</string>
<string name="input_tip_num">请输入正确的数值</string>
<string name="input_tip_type">请输入正确的类型</string>
</resources> </resources>
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!