1
그래서 버튼을 클릭하면 팝업 메뉴가 나타납니다. 이 메뉴에서 사용자는 문자열 일 수있는 "Assignment Name"을 입력하고 "Grade"및 "Max Points Available"을 숫자로 입력 할 수 있습니다. 이제 사용자가 아무 것도 입력하지 않거나 해당 EditText 필드에 null
을 입력하고 싶습니다. 유효한 입력이 입력 될 때까지 OK
버튼을 비활성화하는 방법이 있습니다. 다음은 팝업이 보이는 모습입니다.Android : 특정 조건에서 AlertDialogBuilder의 확인 버튼 사용 안 함
다음은 또한, 나는 "할당 이름은"이미 내 데이터베이스에 존재하는 경우 "OK"버튼을 비활성화 할
Button add = (Button)findViewById(R.id.addBtn);
add.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view){
LayoutInflater li = LayoutInflater.from(context);
View promptsView = li.inflate(R.layout.add_individual_name, null);
AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(context);
alertDialogBuilder.setView(promptsView);
final EditText assignmentName = (EditText) promptsView.findViewById(R.id.enteredIndividualName);
final EditText gradeReceived = (EditText) promptsView.findViewById(R.id.enteredUserGrade);
final EditText maxPoints = (EditText) promptsView.findViewById(R.id.enteredMaxPoints);
alertDialogBuilder.setCancelable(false)
.setPositiveButton("OK", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
String name = assignmentName.getText().toString();
String grade = gradeReceived.getText().toString();
String totalPossible = maxPoints.getText().toString();
checkIfNameAlreadyExists(name);
}
})
.setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
dialog.cancel();
}
});
final AlertDialog alertDialog = alertDialogBuilder.create();
alertDialog.show();
}});
MainActivity
내 코드입니다. 항목이 DB에 존재하는지 확인하는 함수가 있습니다.AlertDialog
또는 기타 XML 코드를보고 싶다면 알려주세요.
감사
감사합니다. 하지만 정확히 어디에 코드 블록을 넣을 수 있습니까? 'alertDialogBuilder.setCancelable (false)'줄 앞에 넣으면 "OK"버튼이 사라지고 그 줄 다음에 넣으면 아무 효과가 없습니다. –
내 대답 (마지막 AlertDialog alertDialog = alertDialogBuilder.create(); 후alertDialog.show();) 후 코드 블록을 넣어보십시오 –
예상대로 완벽하게 작동합니다. 고마워요! –