Android Open Source - Labs-HandHeld-Systems Activity One






From Project

Back to project page Labs-HandHeld-Systems.

License

The source code is released under:

Apache License

If you think the Android project Labs-HandHeld-Systems listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

package course.labs.activitylab;
/*from  w w  w.  java 2  s  . c  om*/
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 {

  // Use these as keys when you're saving state between reconfigurations
  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 variables named
  // mCreate, mRestart, mStart and mResume
  // to count calls to onCreate(), onRestart(), onStart() and
  // onResume(). These variables should not be defined as static.
  int mCreate, mRestart, mStart, mResume = 0;

  // You will need to increment these variables' values when their
  // corresponding lifecycle methods get called.
  
  // TODO: Create variables for each of the TextViews
  // named mTvCreate, mTvRestart, mTvStart, mTvResume.
  // for displaying the current count of each counter variable
  TextView mTvCreate;;
  TextView mTvRestart;
  TextView mTvStart;
  TextView mTvResume;

  @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);
    mTvCreate = (TextView)findViewById(R.id.create);
    mTvRestart = (TextView)findViewById(R.id.restart);
    mTvStart = (TextView)findViewById(R.id.start);
    mTvResume = (TextView)findViewById(R.id.resume);
    
    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
        Intent intent = new Intent(ActivityOne.this, ActivityTwo.class);
        
        // Launch the Activity using the intent
        startActivity(intent);
      }
    });

    // Has previous state been saved?
    if (savedInstanceState != null) {
      
      // TODO:
      // Restore value of counters from saved state
      // Only need 4 lines of code, one for every count variable
      mCreate = savedInstanceState.getInt(CREATE_KEY);
      mRestart = savedInstanceState.getInt(RESTART_KEY);
      mStart = savedInstanceState.getInt(START_KEY);
      mResume = savedInstanceState.getInt(RESUME_KEY);
    }  

    // Emit LogCat message
    Log.i(TAG, "Entered the onCreate() method");

    // TODO:
    // Update the appropriate count variable
    // Update the user interface via the displayCounts() method
    mCreate++;
    displayCounts();
  }

  // Lifecycle callback overrides

  @Override
  public void onStart() {
    super.onStart();

    // Emit LogCat message
    Log.i(TAG, "Entered the onStart() method");

    // TODO:
    // Update the appropriate count variable
    // Update the user interface
    mStart++;
    displayCounts();
  }

  @Override
  public void onResume() {
    super.onResume();

    // Emit LogCat message
    Log.i(TAG, "Entered the onResume() method");

    // TODO:
    // Update the appropriate count variable
    // Update the user interface
    mResume++;
    displayCounts();
  }

  @Override
  public void onPause() {
    super.onPause();

    // Emit LogCat message
    Log.i(TAG, "Entered the onPause() method");
  }

  @Override
  public void onStop() {
    super.onStop();

    // Emit LogCat message
    Log.i(TAG, "Entered the onStop() method");
  }

  @Override
  public void onRestart() {
    super.onRestart();

    // Emit LogCat message
    Log.i(TAG, "Entered the onRestart() method");

    // TODO:
    // Update the appropriate count variable
    // Update the user interface
    mRestart++;
    displayCounts();
  }

  @Override
  public void onDestroy() {
    super.onDestroy();

    // Emit LogCat message
    Log.i(TAG, "Entered the onDestroy() method");
  }

  @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
    savedInstanceState.putInt(CREATE_KEY, mCreate);
    savedInstanceState.putInt(RESTART_KEY, mRestart);
    savedInstanceState.putInt(START_KEY, mStart);
    savedInstanceState.putInt(RESUME_KEY, mResume);
  }

  // Updates the displayed counters
  // This method expects that the counters and TextView variables use the
  // names
  // specified above
  public void displayCounts() {

    mTvCreate.setText("onCreate() calls: " + mCreate);
    mTvStart.setText("onStart() calls: " + mStart);
    mTvResume.setText("onResume() calls: " + mResume);
    mTvRestart.setText("onRestart() calls: " + mRestart);

  }
}




Java Source Code List

course.labs.activitylab.ActivityOne.java
course.labs.activitylab.ActivityTwo.java
course.labs.dangerousapp.DangerousActivity.java
course.labs.fragmentslab.FeedFragmentData.java
course.labs.fragmentslab.FeedFragment.java
course.labs.fragmentslab.FriendsFragment.java
course.labs.fragmentslab.MainActivity.java
course.labs.intentslab.ActivityLoaderActivity.java
course.labs.intentslab.ExplicitlyLoadedActivity.java
course.labs.intentslab.mybrowser.MyBrowserActivity.java
course.labs.permissionslab.ActivityLoaderActivity.java
course.labs.permissionslab.BookmarksActivity.java
course.labs.permissionslab.GoToDangerousActivity.java
course.labs.todomanager.AddToDoActivity.java
course.labs.todomanager.ToDoItem.java
course.labs.todomanager.ToDoListAdapter.java
course.labs.todomanager.ToDoManagerActivity.java