【发布时间】:2017-07-21 04:52:52
【问题描述】:
我已经创建了这个自定义AlertDialog.Builder
问题是我想在onClick 的mPositiveBTN 中将其关闭
dismiss() 和 cancel() 没有定义!该怎么做?
就是这样:
public class SendSmsDialog extends AlertDialog.Builder {
private TextView mMessageTV;
private Button mPositiveBTN;
private EditText mobileNumberET;
private Context mContext;
public SendSmsDialog(@NonNull Context context, String title, String message) {
super(context);
mContext = context;
LayoutInflater inflater = ((MainActivity)context).getLayoutInflater();
View dialoglayout = inflater.inflate(R.layout.send_sms_dialog, null);
this.setView(dialoglayout);
bindViews(dialoglayout);
setListeners();
this.setTitle(title);
mMessageTV.setText(message);
}
private void setListeners() {
mPositiveBTN.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
mobileNumberET.setEnabled(true);
mobileNumberET.requestFocus();
if (UtilitiesMethods.checkEnteredPhone(mobileNumberET.getText().toString())) {
((MainActivity)mContext).doSendSMS(mobileNumberET.getText().toString());
} else {
SendSmsDialog.this.dismiss(); //not defined
mobileNumberET.setError("Please enter a correct mobile number");
}
}
});
}
private void bindViews(View dialoglayout) {
mMessageTV = (TextView) dialoglayout.findViewById(R.id.msg_tv);
mPositiveBTN = (Button) dialoglayout.findViewById(R.id.proceed_btn);
mobileNumberET = (EditText) dialoglayout.findViewById(R.id.mobile_num);
}
}
【问题讨论】:
标签: java android android-alertdialog dismiss