您好,我正在创建一个单位转换器应用程序,试图自学如何制作 android 应用程序,如何让我的应用程序在单击转换按钮时显示消息而不是崩溃,如果输入为空或“”,这里是我的代码。如果 fromEditText 中没有输入,我个人正在考虑禁用该按钮。XML<?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:app="http://schemas.android.com/apk/res-auto"xmlns:tools="http://schemas.android.com/tools"android:layout_width="match_parent"android:layout_height="match_parent"> <Button android:id="@+id/button_convert" android:layout_width="231dp" android:layout_height="wrap_content" android:layout_alignParentBottom="true" android:layout_centerHorizontal="true" android:layout_marginBottom="88dp" android:onClick="convert" android:text="Convert" /> <TextView android:id="@+id/textView" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentTop="true" android:layout_centerHorizontal="true" android:layout_marginTop="29dp" android:text="Unit 1" tools:layout_editor_absoluteX="16dp" tools:layout_editor_absoluteY="16dp" /> <TextView android:id="@+id/textView2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentTop="true" android:layout_centerHorizontal="true" android:layout_marginTop="202dp" android:text="Unit 2" tools:layout_editor_absoluteX="16dp" tools:layout_editor_absoluteY="136dp" /> <Spinner android:id="@+id/spinner_to" android:layout_width="368dp" android:layout_height="wrap_content" android:layout_alignParentStart="true" android:layout_alignParentLeft="true" android:layout_centerVertical="true" tools:layout_editor_absoluteX="8dp" tools:layout_editor_absoluteY="42dp" android:drawSelectorOnTop="true"/>每次单击按钮时出现问题,如果 EditText 中没有任何内容或只有“.”,应用程序就会停止。在它没有数字显然。
1 回答
ITMISS
TA贡献1871条经验 获得超8个赞
如果要检查是否输入了有效数字,可以解析数字并捕获NumberFormatException以检测它是否有效。例如:
String str = fromEditText.getText().toString().trim();
boolean valid = true;
double val = 0;
try {
val = Double.parseDouble(str);
}
catch(NumberFormatException e) {
valid = false;
}
if( valid ) {
// use the number
}
else {
// handle invalid entry
}
除了空白和“.”之外,还有更多不可解析的组合。例如,“........”或用户可能出于某种原因决定输入的任意数量的空格、句点和逗号组合。
添加回答
举报
0/150
提交
取消