Program Tip

진행 대화 상자에서 취소 버튼을 설정하는 방법은 무엇입니까?

programtip 2020. 12. 6. 22:00
반응형

진행 대화 상자에서 취소 버튼을 설정하는 방법은 무엇입니까?


에서 취소 버튼을 설정하고 싶습니다 ProgressDialog. 아래는 내 코드입니다.

myDialog = new ProgressDialog(BaseScreen.this);
myDialog.setMessage("Loading...");
myDialog.setCancelable(false);
myDialog.show();

나는이있는 버튼을 설정하려면 onClickListener이에 ProgressDialog. 이 코드로 시도했습니다.

myDialog.setButton("Cancel", new OnClickListener() {        
    @Override
    public void onClick(DialogInterface dialog, int which) {
        // TODO Auto-generated method stub          
        myDialog.dismiss();
    }
});

하지만 작동하지 않습니다. 다른 유사한 청취자도 시도했지만 여전히 성공하지 못했습니다. 이 문제를 어떻게 해결할 수 있습니까?


setButton사용하는 방법은 사용되지 않습니다 (그것은 여전히 작동해야하지만). 또한 대화 상자 표시 하기 전에 단추를 추가 할 수도 있습니다 . 시험:

myDialog = new ProgressDialog(BaseScreen.this);
myDialog.setMessage("Loading...");
myDialog.setCancelable(false);
myDialog.setButton(DialogInterface.BUTTON_NEGATIVE, "Cancel", new DialogInterface.OnClickListener() {
    @Override
    public void onClick(DialogInterface dialog, int which) {
        dialog.dismiss();
    }
});
myDialog.show();

전화 myDialog.setButton하기 전에 전화를 했는지 확인하십시오. myDialog.show();
또한 myDialog.setButton("Cancel", (DialogInterface.OnClickListener) null);버튼 클릭시 대화 상자를 닫아야하는 경우 에도 사용할 수 있습니다 .


이것을 확인

private void createCancelProgressDialog(String title, String message, String buttonText)
{
    cancelDialog = new ProgressDialog(this);
    cancelDialog.setTitle(title);
    cancelDialog.setMessage(message);
    cancelDialog.setButton(buttonText, new DialogInterface.OnClickListener() 
    {
        public void onClick(DialogInterface dialog, int which) 
        {
            // Use either finish() or return() to either close the activity or just the dialog
            return;
        }
    });
    cancelDialog.show();
}

그런 다음 활동의 다른 곳에서 간단한 호출 방법을 사용하십시오.

createCancelProgressDialog("Loading", "Please wait while activity is loading", "Cancel");

참고 URL : https://stackoverflow.com/questions/7037433/how-to-set-a-cancel-button-in-progress-dialog

반응형