마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

버튼 이벤트 질문입니다.

0 추천
main 레이아웃에서 버튼을 눌러서

다른 레이아웃에 작업한 팝업을 띄워놓은 상태에서

팝업창에있는 닫기 버튼을 눌르면 팝업창이 닫히게 하는 이벤트를 하려고 하는데요

어떻게 해야될까요?
ekewpe (160 포인트) 님이 2014년 1월 21일 질문

1개의 답변

0 추천
팝업창을 dialog나 alertDialog 로 구현하셨다면 dismiss() 메소드로 닫을수 있습니다.
슈루슈 (2,610 포인트) 님이 2014년 1월 21일 답변
Button button_popup;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        // 팝업 윈도우를 출력하기 위한 버튼

        button_popup = (Button) findViewById(R.id.popup);

        button_popup.setOnClickListener(this);

    }

    @Override
    public void onClick(View view) {

        switch (view.getId()) {
        case R.id.popup:
            /* 윈도우 출력 */

            break;
        }
        LayoutInflater layoutInflater = (LayoutInflater) getBaseContext()
                .getSystemService(LAYOUT_INFLATER_SERVICE);
        View popupView = layoutInflater.inflate(R.layout.popup, null);
        final PopupWindow popupWindow = new PopupWindow(popupView,
                LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);

        popupWindow.showAsDropDown(popupView, 80, 320);

        /*
         * Button btnexit = (Button)popupView.findViewById(R.id.exit); finish();
         */
    }


========================================================
현재 이러한 방식으로 팝업을 구현하였는데요. 팝업 레이아웃에 있는 버튼에 있는 버튼에 이벤트처리 하는법은 없을까요?
popupWindow에서 받은 btnexit버튼에 onClick이벤트 생성 후
popupWindow.dismiss() 해주시면 될 거 같습니다.
...