2012-11-17 2 views
2

NAVIGATION_MODE_TABS과 함께 ActionBarSherlock을 사용하고 있습니다. 각 탭에는 사용자 정의보기가 있습니다. 세로 모드에서는 괜찮아 보이지만 탭이 드롭 다운 목록으로 표시되면 가로 모드에서 여러 가지 문제가 발생합니다 (Android에서 자동으로 수행됨) :ActionBarSherlock : 탭이 가로보기 모드에서 맞춤보기를 잃습니다.

  • Android 4.x : 선택한 탭이 액션 바 (이미지, 빨간 동그라미 참조). Android SDK에서 내장 된 Action Bar를 직접 사용할 때도 마찬가지입니다.
  • Android 2.x : 선택한 탭은 작업 표시 줄에 표시되지 않습니다. 드롭 다운을 클릭하자마자 전체 드롭 다운이 사라지고 대신 빈 탭이 표시됩니다. 나는 사용자 지정보기를 사용하지 않는 경우

Action Bar not showing selected tab

모든 것이 잘 작동합니다. 이미지에 ActionBar를 만드는 코드 (목적에 따라 단순하게 유지됨) :

getActionBar().setNavigationMode(ActionBar.NAVIGATION_MODE_TABS); 
for (int i = 0; i < 7; i++) { 
    ActionBar.Tab tab = getActionBar().newTab(); 
    TextView view = new TextView(this); 
    view.setText("This is tab " + (i + 1)); 
    tab.setCustomView(view); 
    tab.setTabListener(this); 
    getActionBar().addTab(tab); 
} 

잘못된 것이 있습니까?

편집는 : getSupportActionBar() 원래 코드와 ActionBarSherlock의에서 작업 표시 줄이 설명 된 문제에서 떨어져 잘 작동에 존재하는, 명확합니다. 위의 코드 샘플을 사용하여 기본 동작 표시 줄을 사용할 때 첫 번째 문제 (작업 표시 줄에 표시되지 않은 선택된 탭)가 있음을 보여줍니다. 혼란을 드려 죄송합니다. ActionBarSherlock의와

답변

1

당신은 텍스트 색상 중 하나를 사용자 정의에서 오는

getSupportActionBar().setNavigationMode(ActionBar.NAVIGATION_MODE_TABS); 
for (int i = 1; i <= 3; i++) { 
    ActionBar.Tab tab = getSupportActionBar().newTab(); 
    tab.setText("Tab " + i); 
    tab.setTabListener(this); 
    getSupportActionBar().addTab(tab); 
} 

당신이 탭 또는 당신이 테마에서 신청 볼 2.x에서 작업을하기 위해서는 getSupportActionBar()를 사용한다 활동 레벨에서 적용됩니다.

+0

감사를 당신의 대답. 'getSupportActionBar()'에 대해서는 제 편집을 참조하십시오. 텍스트 색상 (검은 색 검정) : 사용자 정의 스타일은 문제가되지 않습니다. 이것은 사용자 정의가없는 Stock Holo 테마입니다. Holo.Light로 전환하면 ActionBar에 선택된 탭이 여전히 표시되지 않습니다. – aha

0

이 방법은 나를 위해 잘 작동 :

은 그냥 추가 탭을 추가 한 후, 탐색 방법을 PUT :

... // adding tabs 
bar.setNavigationMode(ActionBar.Navigation_mode_tabs); 

goodluck는을)

관련 문제