2

ActionBar 위에 나타나는 ActionBar 탭과 관련된 이상한 동작이 있습니다. 이) (인해 setDisplayOptions에서 ActionBar.DISPLAY_SHOW_HOME의 마스크에 나는이 일이 일어나고 hereActionBar Tabs 사용자 지정 ActionBar보기 이상한 동작

로마 Nurik의 예를 사용하여 완료-폐기 패턴을 구현하는 ActionBar.I'm의 사용자 정의보기를 설정하고 때 발생하는 일이 enter image description here

을하지만이 ActionBar.DISPLAY_SHOW_HOME 마스크 해달라고 할 때 그것을 잘 작동하지만, 앱 로고가 표시됩니다

final ActionBar actionBar = getActionBar(); 
    actionBar.setDisplayOptions(
      ActionBar.DISPLAY_SHOW_CUSTOM, 
      ActionBar.DISPLAY_SHOW_CUSTOM | ActionBar.DISPLAY_SHOW_HOME 
        | ActionBar.DISPLAY_SHOW_TITLE); 
    actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS); 
    actionBar.setCustomView(customActionBarView, new ActionBar.LayoutParams(
      ViewGroup.LayoutParams.MATCH_PARENT, 
      ViewGroup.LayoutParams.MATCH_PARENT)); 

화면은 다음과 같습니다. 이렇게.

enter image description here

이것은 bug.Please가 fix.I이 로고를 표시하지 않으 제시 될 것으로 보인다. 여기

답변

2

해결 방법 : 여기

ActionBarSherlock - Tabs appearing ABOVE actionbar with custom view

과 : 이에서 onCreate에이 코드 조각을 추가하고 홈 아이콘 숨기기 : https://github.com/JakeWharton/ActionBarSherlock/issues/327

이 날 여기에 조금 해키 보인다하지만 해결 방법입니다 . 이제 ActionBar와 Tabs가 예상대로 작동합니다.

ActionBar.setDisplayOptions()에서 DISPLAY_HOME_HOME을 비활성화/마스크하지 않도록주의하십시오. 마스크를 사용/사용 중지하면 작동하지 않습니다.

View homeIcon = findViewById(android.R.id.home); 
     ((View) homeIcon.getParent()).setVisibility(View.GONE); 
+0

내가 그것을 내가 같은 시도하지만 내가 2.3.1 버전에서 프로그램을 실행 나에게 예외를주고 모든 버전에서 지원 알고 있습니다 희망 – Khan

1

첫 번째 세트는 "true"로 액션 바의 자산 "DisplayShowHomeEnabled"

actionBar.setDisplayShowHomeEnabled (true)를; 다음

과 :

View homeIcon = findViewById(android.R.id.home); 
    ((View) homeIcon.getParent()).setVisibility(View.GONE); 
    ((View) homeIcon).setVisibility(View.GONE); 

나는 그것이 도움이 :)