메뉴 건너뛰기

조회 수 6337 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

간단한 팝업 다이얼로그 띄우는 건 안드로이드에서 제공하는 AlertDialog을 이용하면 쉽게 구현할 수 있습니다.
하지만, 이 팝업 다이얼로그를 사용자 마음대로 바꾸고 싶을 때는
LayoutInflater 을 이용해서 사용자가 직접 만든 View를 생성해서 AlertDialog에 연결해서 보여줄 수 있습니다.


그 간단한 예는 다음과 같습니다.

01.private AlertDialog m_adlgConnectionInfo = null;
02. 
03.private void ShowConnectionInfoPopup()
04.{
05.    if (m_adlgConnectionInfo != null)
06.    {
07.        m_adlgConnectionInfo.dismiss();
08.    }
09.     
10.    LayoutInflater inflater = (LayoutInflater)getSystemService(LAYOUT_INFLATER_SERVICE);
11.    View view = inflater.inflate(R.layout.comp_connected_device, null);
12.    ImageView ivServer = (ImageView)view.findViewById(R.id.iv_con_server);
13.    TextView tvServer = (TextView)view.findViewById(R.id.tv_con_server);
14.    ImageView ivRender = (ImageView)view.findViewById(R.id.iv_con_render);
15.    TextView tvRender = (TextView)view.findViewById(R.id.tv_con_render);
16.     
17.    DMSContentItem dmsContentsItem = m_ImageGallery.GetDMCContentItem();
18.    ivServer.setImageBitmap(AllShareMainData.getDeviceIcon(dmsContentsItem));
19.    tvServer.setText(dmsContentsItem.getDeviceItem().getFriendlyName());
20.    ivRender.setImageResource(R.drawable.dms_micro_hhp);
21.    tvRender.setText("My Device");
22.     
23.    m_adlgConnectionInfo = new AlertDialog.Builder(this)
24.        .setView(view)
25.        .setTitle("Connected devices")
26.        .setPositiveButton("OK", new DialogInterface.OnClickListener()
27.        {
28.            @Override
29.            public void onClick(DialogInterface dialog, int which)
30.            {
31.                dialog.dismiss();
32.            }
33.        })
34.        .create();
35.     
36.    m_adlgConnectionInfo.show();
37.}

맨 윗줄에 있는 m_adlgConnectionInfo이 null 이 아닌 경우 dismiss()를 호출하는 이유는
팝업 버튼을 연속으로 두 번 눌렀을 때 팝업창이 2개 뜨는 것을 방지하기 위한 코드입니다.


List of Articles
번호 제목 날짜 조회 수
197 폰갭(PhoneGap) & jQuery Mobile 로 안드로이드 어플 개발 file 2015.06.29 7839
196 안드로이드스택(Android Stack) 확인 file 2016.06.10 7778
195 문자를 음성으로 변환(TTS)에 대해 알아보자 file 2015.07.01 7768
194 안드로이드 스튜디오 - 줄번호 표시하기 1 file 2015.07.03 7755
193 Java Applet과 javascript와의 통신 2015.06.29 7754
192 HTML5 드래그 앤 드롭 하기 Drag and Drop file 2014.09.04 7748
191 암시적 인텐트를 사용한 인터넷열기, 전화걸기, 문자보내기 [Intent (인텐트)] file 2016.06.07 7736
190 Android 와 JSP 간 파라미터 암복호화 (2) 2016.05.26 7735
189 안드로이드 EditText 필터링 검색 file 2015.12.14 7686
188 [안드로이드] 화면추가 버튼 리스너 file 2015.07.22 7681
187 Activity Data Transfor/ 액티비티 이동간에 데이터 전송하기 file 2016.06.07 7676
186 안드로이드 스튜디오 - rendering problem 해결법 file 2015.07.10 7661
185 이미지의 Orientation를 체크해서 이미지 회전하기 2015.07.16 7658
184 버튼(Button) 패딩 제거 2016.06.10 7651
183 [Android 2.3] spinner file 2015.07.01 7647
182 Intent (인텐트) 2016.06.07 7626
181 manifest 의 launchMode 속성 2015.08.11 7576
180 안드로이드 로딩화면 샘플 file 2015.07.26 7576
179 안드로이드 webview (웹뷰) 개발 #4 - 멀티터치 ( 확대 / 축소 ) 적용 file 2015.07.17 7552
178 ListView 사용시 특정 뷰로 생성 ( 그림 + 텍스트 ) file 2015.07.16 7478
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 13 Next
/ 13

하단 정보를 입력할 수 있습니다

© k2s0o1d4e0s2i1g5n. All Rights Reserved