본문 바로가기
프로그래밍 놀이터/안드로이드, Java

[android/안드로이드] activity chooser? activity selector?

by 돼지왕 왕돼지 2012. 2. 7.
반응형


안녕하세요 돼지왕왕돼지입니다.
오늘은 Activity Chooser ( or selector ) 로 알려진 녀석에 대해 알아보겠습니다.

이 녀석이 뭐 하는 녀석인지, 그리고 이 녀석을 어떻게 호출하는지를 알아보는 글입니다.

Activity Chooser 가 뭐예요?

  
Intent 를 날릴 때, setType에 정의된 type과 관련이 있는 모든 App 을 list 형태로 제공해주는 것입니다.
그래서 User 가 어떤 activity 를 통해 작업할지를 선택하는 것이죠.

가장 공감이 갈만한 예를 들자면, 카카오톡에서 사진을 보내려고 할 때, 그림을 보는 app 이 여러개 설치되어 있다면,
어떤 Gallery 를 통해서 사진을 선택할지 Activity Chooser 가 뜨게 되죠.




Activity Choose ( Selector ) 를 어떻게 호출하죠?


type 을 지정한 후에 startActivity 를 통해 호출합니다.
다만 2가지 방법으로 호출 가능합니다. 강제로 activityChooser 를 부르는 방법과, 시스템에서 판단하여 activityChooser 를 부르는 방법입니다.
 

Intent intent = new Intent( Intent.ACTION_GET_CONTENT );
intent.setType("audio/*");
 
startActivity( Intent.createChooser(intent, "Select music") );
                  or
startActivity( intent );  

 
[도움말]

 
createChooser를 통해 activity를 실행시키는 경우 default activity를 지정하는 옵션이 나오지 않으며, User가 넣어준 Title 을 표시합니다.
( 예제에서는 "Select music" 이 title 로 들어가겠죠? )
 
startActivity를 통해 해당 intent를 바로 실행하는 경우는 위의 그림과 같이 default 로 지정하는 옵션 나오며, 시스템이 정한 title 이 표시됩니다.


잘 아시겠죠?
오늘도 즐거운 하루 되시길~
 
로그인 없이 추천 가능합니다. 손가락 꾸욱~





반응형

댓글