앱 설치시에만 나타나는 경고 상자를 만들려고합니다. 사용자가 앱을 사용하기 전에 전화 번호를 입력해야합니다. 내 onCreate() 메서드에 경고 대화 상자가 있지만 사용자가 경고 상자 바깥을 탭하면 사라집니다. 볼 수 있듯이 alert.setFinishOnTouchOutside(true)
을 추가하려고 시도했지만 오류가 발생합니다 ('경고'에 캐스트 추가). 사용자가 창 외부를 탭하는 경우 알림이 중지되지 않도록하려면 어떻게해야합니까? 감사합니다설치시 입력 프롬프트 사용자 - Android
AlertDialog.Builder alert = new AlertDialog.Builder(this);
alert.setTitle("Please Enter Your Phone Number");
alert.setMessage("You must enter your phone number in order to use this application");
alert.setFinishOnTouchOutside(true);
// Set an EditText view to get user input
final EditText input = new EditText(this);
alert.setView(input);
alert.setPositiveButton("Ok", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int whichButton) {
Editable value = input.getText();
// Do something with value!
}
});
alert.show();
정확히 내가 넣어 것 눈에'setCanceledOnTouchOutside()'에서 위의 코드가하세요? 조금 더 설명해 주시겠습니까? 감사합니다 – mkyong
@Alex : 글쎄, 결과에'당신이'(대화 상자를 표시하는 것 이외에)'AlertDialog'를 반환하는'Builder'를 호출하고있는'show()'를 시도 할 것입니다. 너무 늦을 수도 있습니다.이 경우'builder'에서'create()'를 호출하고,'create()'에 의해 반환 된'AlertDialog'에서'setCanceledOnTouchOutside()'를 호출 한 다음에'show()'대화 상자를 엽니 다. – CommonsWare