• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1package ${packageName};
2
3import android.app.ActionBar;
4import android.app.FragmentTransaction;
5import android.os.Bundle;
6import android.support.v4.app.Fragment;
7import android.support.v4.app.FragmentActivity;
8import android.support.v4.app.NavUtils;
9import android.view.Gravity;
10import android.view.LayoutInflater;
11import android.view.Menu;
12import android.view.MenuItem;
13import android.view.View;
14import android.view.ViewGroup;
15import android.widget.TextView;
16
17public class ${activityClass} extends FragmentActivity implements ActionBar.TabListener {
18
19    /**
20     * The serialization (saved instance state) Bundle key representing the
21     * current tab position.
22     */
23    private static final String STATE_SELECTED_NAVIGATION_ITEM = "selected_navigation_item";
24
25    @Override
26    protected void onCreate(Bundle savedInstanceState) {
27        super.onCreate(savedInstanceState);
28        setContentView(R.layout.${layoutName});
29
30        // Set up the action bar to show tabs.
31        final ActionBar actionBar = getActionBar();
32        actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);
33        <#if parentActivityClass != "">
34        // Show the Up button in the action bar.
35        actionBar.setDisplayHomeAsUpEnabled(true);
36        </#if>
37
38        // For each of the sections in the app, add a tab to the action bar.
39        actionBar.addTab(actionBar.newTab().setText(R.string.title_section1).setTabListener(this));
40        actionBar.addTab(actionBar.newTab().setText(R.string.title_section2).setTabListener(this));
41        actionBar.addTab(actionBar.newTab().setText(R.string.title_section3).setTabListener(this));
42    }
43
44    @Override
45    public void onRestoreInstanceState(Bundle savedInstanceState) {
46        // Restore the previously serialized current tab position.
47        if (savedInstanceState.containsKey(STATE_SELECTED_NAVIGATION_ITEM)) {
48            getActionBar().setSelectedNavigationItem(
49                    savedInstanceState.getInt(STATE_SELECTED_NAVIGATION_ITEM));
50        }
51    }
52
53    @Override
54    public void onSaveInstanceState(Bundle outState) {
55        // Serialize the current tab position.
56        outState.putInt(STATE_SELECTED_NAVIGATION_ITEM,
57                getActionBar().getSelectedNavigationIndex());
58    }
59
60    <#include "include_onCreateOptionsMenu.java.ftl">
61    <#include "include_onOptionsItemSelected.java.ftl">
62
63    @Override
64    public void onTabSelected(ActionBar.Tab tab, FragmentTransaction fragmentTransaction) {
65        // When the given tab is selected, show the tab contents in the
66        // container view.
67        Fragment fragment = new DummySectionFragment();
68        Bundle args = new Bundle();
69        args.putInt(DummySectionFragment.ARG_SECTION_NUMBER, tab.getPosition() + 1);
70        fragment.setArguments(args);
71        getSupportFragmentManager().beginTransaction()
72                .replace(R.id.container, fragment)
73                .commit();
74    }
75
76    @Override
77    public void onTabUnselected(ActionBar.Tab tab, FragmentTransaction fragmentTransaction) {
78    }
79
80    @Override
81    public void onTabReselected(ActionBar.Tab tab, FragmentTransaction fragmentTransaction) {
82    }
83
84    <#include "include_DummySectionFragment.java.ftl">
85
86}
87