请帮助!我有编辑文本字段,其inputType是数字。在firstActivity中点击Submit按钮,我想通过Bundle将值发送到下一个活动。我想让这个领域成为必修课。在发送值之前,我正在检查EditText是否为空。如果它的空白我想给Toast消息“请输入数字”。我使用下面的代码行来获取数字文本
editTextValue= (EditText) findViewById(R.id.edit_attendance);
editTextValue.setText("0");
var1 = Integer.valueOf((editTextValue.getText().toString()));
要使此代码生效,我必须先将默认值设置为0
但是由于这个当用户在这个EditText中输入值时,他必须先擦除0然后输入数字。我不想将其设置为0值。有没有其他方法可以使这项工作。
以下是我的XML代码:
<EditText
android:id="@+id/edit_1"
android:layout_marginLeft="5sp"
android:layout_width="100sp"
android:layout_height="wrap_content"
android:inputType="number"
android:hint="0"
android:textColor="@android:color/white" />
FirstActivity.java
onCreate(){
editTextValue = (EditText) findViewById(R.id.edit_1);
editTextValue.setText("0");
btnSubmit.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
var1 = Integer.valueOf((editTextValue.getText()
.toString()));
if (var1 == 0) // when no value is entered
Toast.makeText(getApplicationContext(),
"Please enter value",
Toast.LENGTH_SHORT).show();
else
{
Intent i = new Intent(getApplicationContext(),
SecondActivity.class);
dataBundle.putInt(SecondActivity.VAR1,var1);
i.putExtras(dataBundle);
startActivity(i);
}
}
答案 0 :(得分:0)
以下代码对我有用:
// editTextValue.setText("0");
editTextValue.setOnEditorActionListener(new OnEditorActionListener() {
public boolean onEditorAction(TextView v, int actionId,
KeyEvent event) {
// TODO Auto-generated method stub
if (actionId == EditorInfo.IME_ACTION_DONE) {
var1 = Integer.valueOf((editTextValue
.getText().toString()));
}
return false;
}
});