메뉴 건너뛰기

조회 수 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 안드로이드 스튜디오 - getter/setter 메소드 자동생성 file 2021.03.29 583
196 안드로이드 소스 코드 보호 기법 2015.06.29 8336
195 안드로이드 소스 - 카메라 플래쉬(Flash, 후라시) 앱 file 2015.06.29 8973
194 안드로이드 맵 API key (배포용 맵키) file 2015.07.01 8103
193 안드로이드 로딩화면 샘플 file 2015.07.26 7576
192 안드로이드 로그인유지 코드 2015.12.14 8807
191 안드로이드 로그인 화면 만들기 file 2015.09.05 8043
190 안드로이드 기본어플 예제 어플소스 모음 2015.08.17 8861
189 안드로이드 가상머신 실행 속도 빠르게 하기 file 2021.03.31 228
188 안드로이드 WebView 에서 tel: 이 되지않는 경우. 2018.10.02 1633
187 안드로이드 webview (웹뷰) 개발 #4 - 멀티터치 ( 확대 / 축소 ) 적용 file 2015.07.17 7552
186 안드로이드 webview (웹뷰) 개발 #3 - 초기 로딩화면 (splash) 띄우기 + 아이콘 적용하기 file 2015.07.17 8697
185 안드로이드 webview (웹뷰) 개발 #2 - 파일 첨부 및 플러그인 적용하기 file 2015.07.17 8295
184 안드로이드 webview (웹뷰) 개발 #1 - 웹사이트를 어플로 만들어 보자! file 2015.07.17 8903
183 안드로이드 unescape /escape [StringEscapeUtils로 해결] file 2021.03.29 344
182 안드로이드 php 로 mysql json 파싱 하기 2014.08.28 9407
181 안드로이드 NDK 개발환경 만들기 / 이클립스 NDK 설정 file 2015.06.10 7890
180 안드로이드 EditText 필터링 검색 구현(adapter.getFilter().filter(cs)) file 2015.12.14 8759
179 안드로이드 EditText 필터링 검색 file 2015.12.14 7686
178 안드로이드 arrayList 를 Json으로 변환 / jsonarry file 2021.03.29 326
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 13 Next
/ 13

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

© k2s0o1d4e0s2i1g5n. All Rights Reserved