2012-11-29 3 views
1

탭이있는 작업 표시 줄 사용 중 ... 작업 표시 줄 항목과 제목을 탭 선택에 따라 변경해야합니다. 제목은 변경할 수 있지만 항목 아이콘은 변경할 수 없습니다.조각 모음이있는 작업 표시 줄을 구현하는 방법은 무엇입니까?

actionBar.setTitle()은 defalut 메소드이기 때문에. 마찬가지로 아이콘 및 항목 변경에 대한 기본 방법이 없습니다. 작업 막대는 활동이 아닌 조각에서 사용될 수 있습니다.이 상황을 처리하는 방법은 무엇입니까? 나에게 도와주세요

오전 .. 코드 아래 사용

공용 클래스 ActionBarActivity를 확장 활동 {

public static Context context; 

@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.actionbar); 
    ActionBar actionBar = getActionBar(); 
    actionBar.setTitle("Action Bar"); 
    actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS); 
    actionBar.show(); 



    ActionBar.Tab aTab = actionBar.newTab().setText("A"); 
    ActionBar.Tab bTab = actionBar.newTab().setText("B"); 
    ActionBar.Tab cTab = actionBar.newTab().setText("C"); 

    Fragment aFragment = new aActivity(); 
    Fragment bFragment = new bActivity(); 
    Fragment bFragment = new cActivity(); 

    aTab .setTabListener(new MyTabsListener(aFragment)); 
    bTab.setTabListener(new MyTabsListener(bFragment)); 
    cTab.setTabListener(new MyTabsListener(cFragment)); 

    actionBar.addTab(aTab); 
    actionBar.addTab(bTab); 
    actionBar.addTab(cTab); 


} 

@Override 
public boolean onCreateOptionsMenu(Menu menu) { 
    MenuInflater menuInflater = getMenuInflater(); 
     menuInflater.inflate(R.menu.menu, menu); 
     return super.onCreateOptionsMenu(menu); 

} 
+0

당신이 상황에 대한 정적 참조를 가질 이유가 있습니까 :

당신의 액션 바 셜록처럼 작동 및 메뉴 항목을 기반으로하는 경우,이 내 솔루션입니다? – dnkoutso

+0

번호. 그냥 토스트 메시지 디스플레이에 사용했습니다. 또한 활동을 사용하는 경우 나는 inflator와 함께 onCreateOptionsMenu (메뉴 메뉴)를 사용하여 작업 표시 줄 메뉴 항목을 변경할 수 있습니다. 하지만 조각을 사용하는 탭 .. 그래서 나는 그것을 얻을 수 없다. 도와주세요 – user1670564

답변

1
http://developer.android.com/guide/topics/manifest/application-element.html#logo 

안드로이드 : 로고 전체 응용 프로그램에 대한 로고 및 활동에 대한 기본 로고. 이 특성은 이미지를 포함하는 drawable 리소스에 대한 참조로 설정해야합니다 (예 : "@ drawable/logo"). 기본 로고가 없습니다.

@Override 
public boolean onPrepareOptionsMenu(Menu menu) { 
    MenuItem switchButton = menu.findItem(R.id.SwitchSearchOption);  
    if(searchScriptDisplayed){ 
     switchButton.setIcon(R.drawable.menu_precedent); 
    }else{ 
     switchButton.setIcon(R.drawable.icon_search); 
    } 
    return super.onPrepareOptionsMenu(menu); 

} 
+0

고마워요. 지금 해봅시다. – user1670564

2
actionBar = getSupportActionBar(); 
actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS); 

actionBar.setTitle("Meeting"); 
actionBar.setDisplayShowHomeEnabled(false); 
actionBar.setDisplayShowCustomEnabled(false); 
actionBar.setDisplayShowTitleEnabled(false); 

/* Set Custom view */ 
ActionBar.Tab tab = actionBar.newTab(); 
// tab.setText("Meeting Users"); 
tab.setIcon(R.drawable.users); 
tab.setTabListener(this); 
actionBar.addTab(tab); 

tab = actionBar.newTab(); 
// tab.setText("Chat"); 
tab.setIcon(R.drawable.chat); 
tab.setTabListener(this); 
actionBar.addTab(tab); 

tab = actionBar.newTab(); 
// tab.setText("Video"); 
tab.setIcon(R.drawable.video_call); 
tab.setTabListener(this); 
tab.select(); 
actionBar.addTab(tab); 

tab = actionBar.newTab(); 
// tab.setText("Extra"); 
tab.setIcon(R.drawable.extra); 
tab.setTabListener(this); 
actionBar.addTab(tab); 

이제 탭에 대한 사용자 정의보기를 사용

ActionBar.Tab tab = getSupportActionBar().newTab(); 
    tab.setCustomView(R.layout.custom_tab_view); 

https://gist.github.com/3167287

http://actionbarsherlock.com/

+0

ur 도움에 감사드립니다. sherlock aciton bar를 사용하고 있지 않습니다. – user1670564

+0

그것의 ok 그래서 그것을 사용하고 환영합니다 –

+0

제 코드를보고 도와주세요 – user1670564

관련 문제