public class MainActivity extends Activity {
private EditText emailEditText;
private EditText passEditText;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
emailEditText = (EditText) findViewById(R.id.editText_email);
passEditText = (EditText) findViewById(R.id.editText_password);
findViewById(R.id.btn_signup).setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
final String email = emailEditText.getText().toString();
if (!isValidEmail(email)) {
emailEditText.setError("Invalid Email");
}
final String pass = passEditText.getText().toString();
if (!isValidPassword(pass)) {
passEditText.setError("Invalid Password");
}
}
});
}
我使用這個代碼驗證時顯示在android系統的EditText錯誤消息右側但是它顯示了以下錯誤消息,我想顯示相鄰EditText
消息即;右邊EditText
。使用而不是在下面編輯文本
<android.support.design.widget.TextInputLayout
android:id="@+id/text_input_layout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:errorEnabled="true">
<android.support.design.widget.TextInputEditText
android:id="@+id/edit_text"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="Enter your name" />
</android.support.design.widget.TextInputLayout>
當你想setError
只取它的TextInputLayout
和setError
參考,當錯誤被解決,然後由經過的null
其刪除:
之外多數民衆贊成根據你的主題 – singularity
如果什麼沒有足夠的空間在右邊 ? –
@BatCat這個問題與你建議的不同 –