Android Open Source - GlassTunes Pause Play Card






From Project

Back to project page GlassTunes.

License

The source code is released under:

Apache License

If you think the Android project GlassTunes 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.glasstunes.cards;
//from  w  w w . jav  a 2 s  .  c om
import android.app.Activity;
import android.os.Bundle;
import android.view.View;

import com.glasstunes.GlassTunesApp;
import com.glasstunes.R;
import com.glasstunes.controller.MusicController;
import com.glasstunes.screenslide.BasicCardFragment;
import com.woodblockwithoutco.remotemetadataprovider.media.enums.PlayState;
import com.woodblockwithoutco.remotemetadataprovider.media.listeners.OnPlaybackStateChangeListener;

public class PausePlayCard extends BasicCardFragment implements
    OnPlaybackStateChangeListener {
  public static PausePlayCard newInstance() {
    PausePlayCard frag = new PausePlayCard();
    Bundle args = BasicCardFragment.generateArgs(
        R.drawable.ic_musicplayer_play, R.string.av_play);
    frag.setArguments(args);
    return frag;
  }

  private boolean isPlaying = false;

  @Override
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
  }

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

    ((GlassTunesApp) getActivity().getApplication())
        .addOnPlaybackStateChangedListener(this);
  }

  @Override
  public void onStop() {
    super.onStop();
    ((GlassTunesApp) getActivity().getApplication())
        .removeOnPlaybackStateChangedListener(this);
  }

  @Override
  public void onSelect() {
    super.onSelect();
    if (isPlaying) {
      MusicController.getInstance().pause(getActivity());
    } else {
      MusicController.getInstance().play(getActivity());
    }
    getActivity().setResult(Activity.RESULT_OK);
    getActivity().finish();
  }

  @Override
  public void onPlaybackStateChanged(PlayState playbackState) {
    switch (playbackState) {
    case BUFFERING:
      isPlaying = true;
      break;
    case ERROR:
      isPlaying = false;
      break;
    case FAST_FORWARDING:
      break;
    case PAUSED:
      isPlaying = false;
      break;
    case PLAYING:
      isPlaying = true;
      break;
    case REWINDING:
      break;
    case SKIPPING_BACKWARDS:
      break;
    case SKIPPING_FORWARDS:
      break;
    case STOPPED:
      isPlaying = false;
      break;
    }
    updateState(getView());
  }

  private void updateState(View view) {
    setIconRes(isPlaying ? R.drawable.ic_musicplayer_pause
        : R.drawable.ic_musicplayer_play);
    setLabelRes(isPlaying ? R.string.av_pause : R.string.av_play);
  }
}




Java Source Code List

com.glasstunes.BaseContentCardActivity.java
com.glasstunes.BrowseActivity.java
com.glasstunes.ConfirmationActivity.java
com.glasstunes.ControlsActivity.java
com.glasstunes.Debug.java
com.glasstunes.DetailActivity.java
com.glasstunes.GlassTunesApp.java
com.glasstunes.HeaderActivity.java
com.glasstunes.LauncherActivity.java
com.glasstunes.NowPlayingActivity.java
com.glasstunes.cards.ActionCard.java
com.glasstunes.cards.BrowseCard.java
com.glasstunes.cards.ContentCard.java
com.glasstunes.cards.HeaderCard.java
com.glasstunes.cards.LauncherCard.java
com.glasstunes.cards.NowPlayingCard.java
com.glasstunes.cards.PausePlayCard.java
com.glasstunes.cards.SkipNextCard.java
com.glasstunes.cards.SkipPreviousCard.java
com.glasstunes.controller.LocalMusicController.java
com.glasstunes.controller.MusicController.java
com.glasstunes.screenslide.BasicCardFragment.java
com.glasstunes.screenslide.BasicCardPagerAdapter.java
com.glasstunes.screenslide.BounceBackViewPager.java
com.glasstunes.screenslide.CardFragment.java
com.glasstunes.screenslide.ContextWrapperEdgeEffect.java
com.glasstunes.screenslide.ScreenSlideActivity.java
com.glasstunes.screenslide.ScreenSlidePagerAdapter.java
com.glasstunes.view.RobotoTypefaces.java
com.glasstunes.view.SliderView.java
com.glasstunes.view.TypophileTextView.java
com.viewpagerindicator.CirclePageIndicator.java
com.viewpagerindicator.IconPageIndicator.java
com.viewpagerindicator.IconPagerAdapter.java
com.viewpagerindicator.IcsLinearLayout.java
com.viewpagerindicator.LinePageIndicator.java
com.viewpagerindicator.PageIndicator.java
com.viewpagerindicator.TabPageIndicator.java
com.viewpagerindicator.TitlePageIndicator.java
com.viewpagerindicator.UnderlinePageIndicator.java
com.woodblockwithoutco.remotemetadataprovider.internal.MetadataUpdaterCallback.java
com.woodblockwithoutco.remotemetadataprovider.internal.RemoteControlDisplay.java
com.woodblockwithoutco.remotemetadataprovider.media.RemoteMetadataProvider.java
com.woodblockwithoutco.remotemetadataprovider.media.enums.MediaCommand.java
com.woodblockwithoutco.remotemetadataprovider.media.enums.PlayState.java
com.woodblockwithoutco.remotemetadataprovider.media.enums.RemoteControlFeature.java
com.woodblockwithoutco.remotemetadataprovider.media.listeners.OnArtworkChangeListener.java
com.woodblockwithoutco.remotemetadataprovider.media.listeners.OnMetadataChangeListener.java
com.woodblockwithoutco.remotemetadataprovider.media.listeners.OnPlaybackStateChangeListener.java
com.woodblockwithoutco.remotemetadataprovider.media.listeners.OnRemoteControlFeaturesChangeListener.java