Я сделал индивидуальный макет для AlertDialog
, в котором есть EditText
.Как получить доступ к EditText, помещенному в пользовательский макет, сделанный для AlertDialog?
При нажатии кнопки я хочу проверить, пуст или заполнен этот текст, чтобы я мог продолжить дальнейшие операции.
Вот XML-код для пользовательского макета для AlertDialog:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_marginLeft="16dp"
android:layout_marginRight="16dp"
android:layout_width="match_parent"
android:layout_height="match_parent">
<android.support.design.widget.TextInputLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="8dp"
android:layout_marginBottom="8dp"
android:layout_marginLeft="16dp"
android:layout_marginRight="16dp">
<EditText
android:id="@+id/id"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="type here"/>
</android.support.design.widget.TextInputLayout>
</LinearLayout>
Вот что я делаю с Java кодом:
final AlertDialog.Builder builder = new AlertDialog.Builder(SignUpActivity.this);
builder.setTitle("Choose a unique username");
builder.setView(R.layout.choose_unique_name_dialog);
builder.setPositiveButton("Continue", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
if (uniqueUserName.getText().toString().isEmpty()) {
Snackbar snackbar = Snackbar
.make(coordinatorLayout, "Please choose a unique username", Snackbar.LENGTH_SHORT);
snackbar.show();
} else {
signingUpMethod();
}
}
});
AlertDialog dialog = builder.create();
dialog.show();
Итак, я хочу знать как открыть EditText
от моего MainActivity
?
Пожалуйста, дайте мне знать.
это сработало для меня, но проблема в том, что поведение, которое должно отображаться только тогда, когда edittext пуст, также отображается, когда в нем есть текст. Почему так? –
Вы хотите сказать, что хотите показать это alertDialog только при некоторых условиях? – SripadRaj
, пожалуйста, просмотрите отредактированный вопрос ... Я делаю проверку после нажатия на кнопку clickbutton. если edittext пуст, отобразится закусочная, и если это не так, будет выполнен метод, но в обоих условиях отображается закутка. –