Search code examples
androidandroid-intentrefreshtabactivityandroid-tabactivity

Refresh Tab Activity on Android


I need to refresh my Activity once i click my Tab activity back. Currently its just displaying the previous content. I need to refresh my activity, so new contents can be loaded once its back. Here is my Code for adding the TabActivity. Please help. Appreciate for all your feedback.

    private void setTabs()
{
    addTab("Home", R.drawable.tab_home, OptionsActivity.class);
    addTab("News", R.drawable.tab_search, JsonActivity.class);
    addTab("Scores", R.drawable.tab_home, scores.class);
    addTab("Video", R.drawable.tab_search, JsonActivity2.class);
    addTab("Follow Us", R.drawable.tab_home, SAXParserActivity.class);
    addTab("Socket", R.drawable.tab_search, socketAndroid.class);
}



private void addTab(String labelId, int drawableId, Class<?> c)
{
    TabHost tabHost = getTabHost();
    Intent intent = new Intent(this, c);
    TabHost.TabSpec spec = tabHost.newTabSpec("tab" + labelId); 

    View tabIndicator = LayoutInflater.from(this).inflate(R.layout.tab_indicator, getTabWidget(), false);
    TextView title = (TextView) tabIndicator.findViewById(R.id.title);
    title.setText(labelId);
    ImageView icon = (ImageView) tabIndicator.findViewById(R.id.icon);
    icon.setImageResource(drawableId);

    spec.setIndicator(tabIndicator);
    spec.setContent(intent);
    tabHost.addTab(spec);

}

Solution

  • Here is the Final Addition of Code...I added .addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);

    TabHost tabHost = getTabHost();
    Intent intent = new Intent(this, c).addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
    TabHost.TabSpec spec = tabHost.newTabSpec("tab" + labelId); 
    

    Thank You All.