Question

I am new in android, I need to ask this question.

I build some android application that implement the TabLayout, so every activity is held by every tab on my app. But before it, we should face the Login activity.

My question is how can I Logout when we are in the Tab Activity, and how can I refresh it in every activity on that tab? I have 3 tab, and I implement menu to "logout" and "refresh", and also have menu for "about". Here is my sample code on TabActivity, but I just implement toast in every action when we click menu.

public class SampleTabActivity extends TabActivity {

private TabHost tabHost;
private Resources res;

/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState); 
    requestWindowFeature(Window.FEATURE_CUSTOM_TITLE);

    setContentView(R.layout.sipadutab);

    getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.window_title);

    res = getResources(); // Resource object to get Drawables
    tabHost = getTabHost();  // The activity TabHost
    TabHost.TabSpec spec;  // Resusable TabSpec for each tab
    Intent intent;  // Reusable Intent for each tab

    tabHost.setCurrentTab(0);

    tabHost.setOnTabChangedListener(this); // set listener to tabhost IMPORTANT IMPORTANT

    // Create an Intent to launch an Activity for the tab (to be reused)
    intent = new Intent().setClass(this, FirstActivity.class);
    // Initialize a TabSpec for each tab and add it to the TabHost
    spec = tabHost.newTabSpec("first").setIndicator("First",
                      res.getDrawable(R.drawable.one))
                  .setContent(intent);
    tabHost.addTab(spec);       

    // Initialize a TabSpec for each tab and add it to the TabHost
    intent = new Intent().setClass(this, SecondActivity.class);
    spec = tabHost.newTabSpec("second").setIndicator("Second",
            res.getDrawable(R.drawable.two))
        .setContent(intent);
    tabHost.addTab(spec);

    // Initialize a TabSpec for each tab and add it to the TabHost
    intent = new Intent().setClass(this, ThirdActivity.class);
    spec = tabHost.newTabSpec("third").setIndicator("Third",
            res.getDrawable(R.drawable.three))
        .setContent(intent);
    tabHost.addTab(spec);



// Initiating Menu XML file (menu.xml)
@Override
public boolean onCreateOptionsMenu(Menu menu)
{
    MenuInflater menuInflater = getMenuInflater();
    menuInflater.inflate(R.layout.menuscreen, menu);
    return true;
}


@Override
public boolean onOptionsItemSelected(MenuItem item)
{

    switch (item.getItemId())
    {
    case R.id.menu_about:
        // Single menu item is selected do something
        // Ex: launching new activity/screen or show alert message
        Toast.makeText(SampleTabActivity.this, "About is Selected", Toast.LENGTH_SHORT).show();
        return true;

    case R.id.menu_refresh:
        Toast.makeText(SampleTabActivity.this, "Refresh is Selected", Toast.LENGTH_SHORT).show();
        return true;

    case R.id.menu_logout:
        Toast.makeText(SampleTabActivity.this, "Logout is Selected", Toast.LENGTH_SHORT).show();
        return true;

    default:
        return super.onOptionsItemSelected(item);
    }
}   

}

Thanks in advance.

No correct solution

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top