summaryrefslogtreecommitdiffstats
path: root/Android/01-TheActivityClass/ActivityLab/src/course/labs/activitylab/ActivityOne.java
blob: 83e1df754ee84c82756b4cdb1f021709abe150f3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
package course.labs.activitylab;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.TextView;

public class ActivityOne extends Activity {

    private static final String RESTART_KEY = "restart";
    private static final String RESUME_KEY = "resume";
    private static final String START_KEY = "start";
    private static final String CREATE_KEY = "create";

    // String for LogCat documentation
    private final static String TAG = "Lab-ActivityOne";

    // Lifecycle counters

    // TODO:
    // Create counter variables for onCreate(), onRestart(), onStart() and
    // onResume(), called mCreate, etc.
    // You will need to increment these variables' values when their
    // corresponding lifecycle methods get called

    // TODO: Create variables for each of the TextViews, called
    // mTvCreate, etc.

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

        // TODO: Assign the appropriate TextViews to the TextView variables
        // Hint: Access the TextView by calling Activity's findViewById()
        // textView1 = (TextView) findViewById(R.id.textView1);

        Button launchActivityTwoButton = (Button) findViewById(R.id.bLaunchActivityTwo);
        launchActivityTwoButton.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View v) {
                // TODO:
                // Launch Activity Two
                // Hint: use Context's startActivity() method
                // Create an intent stating which Activity you would like to start
                // Launch the Activity using the intent
            }
        });

        // Check for previously saved state
        if (savedInstanceState != null) {
            // TODO:
            // Restore value of counters from saved state
            // Only need 4 lines of code, one for every count variable
        }

        // TODO: Emit LogCat message
        // TODO:
        // Update the appropriate count variable
        // Update the user interface via the displayCounts() method
    }

    // Lifecycle callback overrides

    @Override
    public void onStart() {
        super.onStart();
        // TODO: Emit LogCat message
        // TODO:
        // Update the appropriate count variable
        // Update the user interface
    }

    @Override
    public void onResume() {
        super.onResume();
        // TODO: Emit LogCat message
        // TODO:
        // Update the appropriate count variable
        // Update the user interface
    }

    @Override
    public void onPause() {
        super.onPause();
        // TODO: Emit LogCat message
    }

    @Override
    public void onStop() {
        super.onStop();
        // TODO: Emit LogCat message
    }

    @Override
    public void onRestart() {
        super.onRestart();
        // TODO: Emit LogCat message
        // TODO:
        // Update the appropriate count variable
        // Update the user interface
    }

    @Override
    public void onDestroy() {
        super.onDestroy();
        // TODO: Emit LogCat message
    }

    @Override
    public void onSaveInstanceState(Bundle savedInstanceState) {
        // TODO:
        // Save state information with a collection of key-value pairs
        // 4 lines of code, one for every count variable
    }

    // Updates the displayed counters
    public void displayCounts() {
        mTvCreate.setText("onCreate() calls: " + mCreate);
        mTvStart.setText("onStart() calls: " + mStart);
        mTvResume.setText("onResume() calls: " + mResume);
        mTvRestart.setText("onRestart() calls: " + mRestart);
    }
}