當註冊時用戶輸入無效email
或mobile
時,我將錯誤設置爲EditText
。在InputTextLayout中將錯誤設置爲EditText時,只有錯誤圖標可見
請檢查下面的代碼:
<android.support.design.widget.TextInputLayout
android:id="@+id/txt_input_mobile_number"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<EditText
android:id="@+id/input_mobile_number"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="Mobile number"
android:maxLength="10"
android:inputType="number"
android:maxLines="1"/>
</android.support.design.widget.TextInputLayout>
MyFragment.java
可實現以下OnKeyListener
:
@Override
public boolean onKey(View v, int keyCode, KeyEvent event) {
if ((event.getAction() == KeyEvent.ACTION_DOWN) &&
(keyCode == KeyEvent.KEYCODE_ENTER)) {
// perform validation of data here
switch (v.getId()) {
case R.id.input_mobile_number:
EditText editMobile = (EditText)getActivity().findViewById(R.id.input_mobile_number);
Editable phone = binding.inputMobileNumber.getText();
if (phone != null && isValidMobile(phone.toString())) {
editMobile.setError("Please enter valid mobile number");
editMobile.requestFocus();
}
break;
}
return true;
}
return false;
}
下面的截圖顯示,只有錯誤圖標就像是另外一個可見不是錯誤對話框:
與錯誤提示
很難得到哪個版本是你想要的,以及你想要什麼。所以我們有:*當用戶在註冊時輸入無效的電子郵件或手機時,我將錯誤設置爲EditText。 下面的屏幕截圖顯示,只有錯誤圖標可見不是錯誤框像其他* *和一些代碼轉儲**沒有顯示什麼問題** – Selvin
嘗試設置錯誤到'InputTextLayout'你設置爲'EditText'這就是爲什麼.. – Ironman