Android Open Source - ScienceQuiz Game Activity






From Project

Back to project page ScienceQuiz.

License

The source code is released under:

GNU General Public License

If you think the Android project ScienceQuiz 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 com.finger.sciencequiz;
/*from   w  ww . j  ava 2 s. co  m*/
import java.util.Locale;
import android.support.v7.app.ActionBarActivity;
import android.support.v7.app.ActionBar;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentTransaction;
import android.support.v4.app.FragmentPagerAdapter;
import android.support.v4.app.NavUtils;
import android.content.Intent;
import android.os.Bundle;
import android.support.v4.view.ViewPager;
import android.view.Gravity;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;

public class GameActivity extends ActionBarActivity
{

    /**
     * The {@link android.support.v4.view.PagerAdapter} that will provide
     * fragments for each of the sections. We use a {@link FragmentPagerAdapter}
     * derivative, which will keep every
     * loaded fragment in memory. If this becomes too memory intensive, it
     * may be best to switch to a
     * {@link android.support.v4.app.FragmentStatePagerAdapter}.
     */
    SectionsPagerAdapter mSectionsPagerAdapter;

    /**
     * The {@link ViewPager} that will host the section contents.
     */
    ViewPager            mGamePager;
    
    public static int QUESTION_COUNT = 3;

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

  // Create the adapter that will return a fragment for each of the three
  // primary sections of the activity.
  mSectionsPagerAdapter = new SectionsPagerAdapter (getSupportFragmentManager ());

  // Set up the ViewPager with the sections adapter.
  mGamePager = (GalleryViewPager) findViewById (R.id.pager);
  mGamePager.setAdapter (mSectionsPagerAdapter);

    }

    @Override
    public boolean onCreateOptionsMenu (Menu menu)
    {

  // Inflate the menu; this adds items to the action bar if it is present.
  getMenuInflater ().inflate (R.menu.game, menu);
  return true;
    }

    @Override
    public boolean onOptionsItemSelected (MenuItem item)
    {
  // Handle action bar item clicks here. The action bar will
  // automatically handle clicks on the Home/Up button, so long
  // as you specify a parent activity in AndroidManifest.xml.
  int id = item.getItemId ();
  return super.onOptionsItemSelected (item);
    }
    
    public void evalAnswer (View v)
    {
  switch (v.getId ())
  {
  case R.id.answerA:
      break;
  case R.id.answerB:
      break;
  case R.id.answerC:
      break;
  case R.id.answerD:
      break;
  }
  
  int i = mGamePager.getCurrentItem ();
  if (i >= QUESTION_COUNT - 1)
      evalRound ();
  mGamePager.setCurrentItem (++i);
    }
    
    public void evalRound ()
    {
  NavUtils.navigateUpFromSameTask (this);//FIXME
    }

    /**
     * A {@link FragmentPagerAdapter} that returns a fragment corresponding to
     * one of the sections/tabs/pages.
     */
    public class SectionsPagerAdapter extends FragmentPagerAdapter
    {

  public SectionsPagerAdapter (FragmentManager fm)
  {
      super (fm);
  }

  @Override
  public Fragment getItem (int position)
  {
      // getItem is called to instantiate the fragment for the given page.
      // Return a PlaceholderFragment (defined as a static inner class
      // below).
      return PlaceholderFragment.newInstance (position + 1);
  }

  @Override
  public int getCount ()
  {
      // Show 3 total pages.
      return QUESTION_COUNT;
  }

  @Override
  public CharSequence getPageTitle (int position)
  {
      Locale l = Locale.getDefault ();
      return getString (R.string.question).toUpperCase (l) + " " + ++position;
  }
    }

    /**
     * A placeholder fragment containing a simple view.
     */
    public static class PlaceholderFragment extends Fragment
    {
  /**
   * The fragment argument representing the section number for this
   * fragment.
   */
  private static final String ARG_SECTION_NUMBER = "section_number";

  /**
   * Returns a new instance of this fragment for the given section
   * number.
   */
  public static PlaceholderFragment newInstance (int sectionNumber)
  {
      PlaceholderFragment fragment = new PlaceholderFragment ();
      Bundle args = new Bundle ();
      args.putInt (ARG_SECTION_NUMBER, sectionNumber);
      fragment.setArguments (args);
      return fragment;
  }

  public PlaceholderFragment ()
  {
  }

  @Override
  public View onCreateView (LayoutInflater inflater, ViewGroup container,
                            Bundle savedInstanceState)
  {
      View rootView = inflater.inflate (R.layout.fragment_game,
                                  container,
                                  false);
      return rootView;
  }
    }

}




Java Source Code List

com.finger.sciencequiz.AboutActivity.java
com.finger.sciencequiz.ConfigReader.java
com.finger.sciencequiz.FriendsHomeFragment.java
com.finger.sciencequiz.GalleryViewPager.java
com.finger.sciencequiz.GameActivity.java
com.finger.sciencequiz.GameTypeSelectActivity.java
com.finger.sciencequiz.HistoryActivity.java
com.finger.sciencequiz.HomePagerAdapter.java
com.finger.sciencequiz.ImageAdapter.java
com.finger.sciencequiz.LobbyActivity.java
com.finger.sciencequiz.MainActivity.java
com.finger.sciencequiz.NavigationDrawerFragment.java
com.finger.sciencequiz.NewGameActivity.java
com.finger.sciencequiz.ProfileHomeFragment.java
com.finger.sciencequiz.RotationTextView.java
com.finger.sciencequiz.RunningGamesHomeFragment.java
com.finger.sciencequiz.SettingsActivity.java
com.finger.sciencequiz.StartHomeFragment.java