태터데스크 관리자

도움말
닫기
적용하기   첫페이지 만들기

태터데스크 메시지

저장하였습니다.

액션바의 변신은 무죄? - 다양한 액션바의 모습들

2011.06.12 14:52

이전 글 (
2011/05/30 - 액션바(Action bar) 따라잡기 - 액션바가 뭔가요?) 에서 알아보았던 것처럼, 액션바는 메뉴를 대신하는 것 외에도 다양한 역할을 수행할 수 있습니다. 그 중에서 대표적인 기능이 사용자가 애플리케이션 내 흐름을 잘 알 수 있도록 도와주는 것입니다.

애플리케이션 흐름을 알려주는 액션바의 요소들


애플리케이션을 사용하다 보면 화면이 전환되어 홈 화면보다 하위 단계의 화면에 오게 되는 경우가 많은데, 간혹 내가 보고 있는 화면이 홈 화면인지, 하위 단계의 화면인지 혼동되는 경우가 있습니다.

액션바는 위와 같은 사용자들의 혼동을 방지하기 위해, 하위 단계 화면일 경우 이를 사용자가 인지할 수 있도록 액션바 좌측 아이콘에 '업 네비게이션(Up navigation)'이라 하는 작은 삼각형을 표시하도록 제공하고 있습니다. 다음 화면은 일반적인 상태와 업 네비게이션으로 표시될 때의 액션바 아이콘을 보여줍니다.


일반 상태일 때와 업 네비게이션 상태의 액션바 아이콘



액션바 아이콘을 업 네비게이션 형태로 표시하려면 setDisplayHomeAsUpEnabled() 메서드를 사용합니다. 액션바의 인스턴스는 액티비티의 getActionBar() 메서드로 얻을 수 있습니다.

API
public abstract void setDisplayHomeAsUpEnabled (boolean showHomeAsUp)

액션바 아이콘을 업 네비게이션 형태로 표시합니다.



이 뿐만 아니라, 액션바에 탭을 추가하여 여러 화면을 더 깔끔하게 구성하는 것도 가능합니다. 다음은 액션바에 탭이 추가된 모습을 보여줍니다.

액션바에서 탭을 표시하는 모습



액션바에 탭을 추가하려면 액션바의 네비게이션 모드를 탭 모드로 설정한 후, 탭을 추가하면 됩니다.

API
public abstract void setNavigationMode(int mode)

액션바의 네비게이션 모드를 설정합니다.


액션바의 네비게이션 모드는 총 세가지로, 기본 모드인 ActionBar.NAVIGATION_MODE_STANDARD, 탭을 표시하는 모드인 ActionBar.NAVIGATION_MODE_TABS, 리스트를 표시하는 모드인 ActionBar.NAVIGATION_MODE_LIST가 있습니다.

API
public abstract void addTab(ActionBar.Tab)

액션바에 탭을 추가합니다.


Tab 인스턴스는 ActionBar.newTab() 메서드를 통해 얻을 수 있으며, 탭을 추가한 후에는 필히 ActionBar.Tab.setTabListener() 메서드를 사용하여 각 탭이 선택되었을 때 수행할 동작을 처리할 TabListener를 등록해야 합니다.

액션바 모습 변경하기


액션바는 기본적으로 애플리케이션 아이콘과 제목이 표시됩니다. 하지만 원한다면 이를 표시되지 않도록 할 수도 있습니다. 또한, 애플리케이션 아이콘 대신 액션바에 최적화된 그림인 '로고'를 표시하도록 하는 것도 가능합니다.

로고는 매니페스트에서 지정할 수 있으며, 로고를 지정하면 애플리케이션 아이콘 대신 로고가 기본적으로 액션바에 표시됩니다. 로고를 표시하거나 표시하지 않도록 하려면 ActionBar.setDisplayUseLogoEnabled() 메서드를 사용합니다.

API
public abstract void setDisplayUseLogoEnabled(boolean enabled)

액션바의 로고 표시유무를 설정합니다.


로고와 마찬가지로 액션바에 표시되는 제목도 ActionBar.setDisplayShowTItleEnabled() 메서드를 사용하여 쉽게 표시 여부를 설정할 수 있습니다.

API
public abstract void setDisplayShowTitleEnabled(boolean enabled)

액션바에 표시되는 제목의 표시유무를 설정합니다.



저작자 표시 비영리 변경 금지
신고

커니 유저 인터페이스/액션 바(Action Bar) , , , , , , ,

  1. Blog Icon
    안드로이드짱

    안녕하세요 커니님의 강좌 잘보고있습니다
    액션바 관련 내용 보고있는데 "다양한 액션바의 모습들" 강좌에서는
    관련 코드가 없네요 제가 아직 허접해서 코드따라 배우고있어서 혹시
    "액션바가 먼가요" 강좌처럼 간단한 예제 코드 강좌올리실수있을까요? 감사합니다^^;

  2. Blog Icon
    메딕

    액션바는 안드로이드 허니컴 예제에 잘 나와있기에 따로 안올리시고 액션바 옵션이랑 사용에 대한 설명만 해놓으셨을 겁니다.

  3. Blog Icon
    잠와도 못자

    항상 많이 배우고 가요~ ^______________________^
    매뉴는 항상 우측에나타나는가요? 홈매뉴를 없애고 [매뉴] [ 빈공간] [매뉴]로 엑션바를 가득체우고싶은데 선택한 매뉴를 좌측으로 정렬할순 없나요?ㅠㅠ

    알려주세요.ㅠㅠ

  4. 잘 배워갑니다~~~ 담아갈게요~