Ändern der Aktionsleiste mit Fragment Wenn Sie eine andere Registerkarte auswählen, und die Aktionsleiste finden Sie oben auf der Registerkarte "Aktionsleiste"

StackOverflow https://stackoverflow.com/questions/19850825

Frage

! [Wenn auf Tab 1 tippen [1

! [Wenn auf Tab 2 tippen [2

Wenn ich die Registerkarte "Actionleiste" auswähle, sollte die oben genannte Title -Aktionleiste geändert werden, aber ich kann jetzt nur noch eine Titel -Aktionsleiste festlegen. Ich habe diesen Code unten müde. Aber ich konnte keine Lösung finden. Kann mir jemand helfen???

package com.ActionBar.Tab; 
public class MainActivity extends Activity {
// Declare Tab variables
ActionBar.Tab tab1, tab2, tab3;
TextView tab1TV, tab2TV, tab3TV;

Fragment Fragment1 = new Fragment1();
Fragment Fragment2 = new Fragent2();
Fragment Fragment3 = new Fragment3();

View view1,view2,view3;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity__main);

    RelativeLayout custom = new RelativeLayout(getApplicationContext());
    ActionBar.LayoutParams params = new ActionBar.LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT);
    custom.setLayoutParams(params); 
    custom.setGravity(Gravity.CENTER);
    ActionBar actionBar = getActionBar();
    actionBar.show();
    actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_STANDARD);
    LayoutInflater inflater = (LayoutInflater) this
            .getSystemService(Context.LAYOUT_INFLATER_SERVICE);
    actionBar.setDisplayShowCustomEnabled(true);

    actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);

    tab1TV = (TextView) findViewById(R.id.tab1Tv);
    tab2TV = (TextView) findViewById(R.id.tab2Tv);
    tab3TV = (TextView) findViewById(R.id.tab3Tv);

    // Create Actionbar Tabs
    actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);

    // set Tab name
    tab1 = actionBar.newTab().setCustomView(tab1TV);
    tab2 = actionBar.newTab().setCustomView(tab2TV);
    tab3 = actionBar.newTab().setCustomView(tab3TV);

    // set tab listener     
    tab1.setTabListener(new TabListener(tab1Fragment));
    tab2.setTabListener(new TabListener(tab2Fragment));
    tab3.setTabListener(new TabListener(tab3Fragment));

    // Add tabsto the action bar
    actionBar.addTab(tab1);
    actionBar.addTab(tab2);
    actionBar.addTab(tab3);

        int a = R.layout.layout__tab1_action_bar;
        view1 = inflater.inflate(a,null);

        int b=R.layout.layout_tab2_action_bar;
        view2 = inflater.inflate(b,null);

        int c= R.layout.layout_tab3_action_bar;
        view3 = inflater.inflate(c,null);

    actionBar.setCustomView(view1); 
    /*Here the title action bar will change with view1,view2,view3 
    with tab selection but I can only set one action bar*/      
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    // Inflate the menu; this adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.main, menu);
    return true;
}

}

War es hilfreich?

Lösung

Ich habe dieses Problem gelöst. Ich habe das Layout des Aktionsbalkentitels in die Fragmente OnResume () -Methode verwendet.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top