2011-06-30 55 views
2

我已创建MyTabActivity,并使用两个选项卡来扩展TabActivity类。根据选定的活动选项卡数据动态更改TabActivity标题

public class MyTabActivity extends TabActivity { 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 

     setTitle("My App Name"); 

     final TabHost tabHost = getTabHost(); 

     tabHost.addTab(tabHost.newTabSpec(TAB_1).setIndicator(TAB_1, getResources().getDrawable(R.drawable.tab1)).setContent(new Intent(this, first.class))); 

     tabHost.addTab(tabHost.newTabSpec(TAB_2).setIndicator(TAB_2, getResources().getDrawable(R.drawable.tab2)).setContent(new Intent(this, second.class))); 

     tabHost.setOnTabChangedListener(new OnTabChangeListener() { 

     public void onTabChanged(String tabId) { 

      } 
     }); 

     tabHost.setCurrentTabByTag(TAB_1); 
    } 
} 

我需要根据活动数据之一的变化来更改MyTabActivity的标题。

public class first extends Activity { 
    public void onCreate(Bundle bundle) { 
     super.onCreate(bundle); 
     //change the MyTabActivity title from here ??? 
    } 

} 

请帮助我该怎么做。

感谢

回答

1

你可以得到你的TabActivity里面的孩子Activity这样。 如果你在FirstActivitySecondActivity尝试这样的事情。

MyTabActivity myTabs = (MyTabActivity) this.getParent(); 
myTabs.setTitle("This is First cool Activity"); 

你可以在SecondActivity中做同样的事情。

干杯!

+0

感谢您回答adil,但它不工作。我需要在设置标题后调用任何UI刷新类型的功能? – Rishi

+0

其实我的FirstActivity是从ListActivity扩展的,这是它没有发生的问题? – Rishi

相关问题