Android Open Source - Music-Share-Android Background Chooser Dialog Fragment






From Project

Back to project page Music-Share-Android.

License

The source code is released under:

GNU General Public License

If you think the Android project Music-Share-Android 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.paperairplane.music.share.dialogs;
//from  w w w .  j  a  v  a2s .  co m

import com.paperairplane.music.share.Consts;
import com.paperairplane.music.share.R;
import android.app.AlertDialog;
import android.app.Dialog;
import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
import android.content.SharedPreferences;
import android.graphics.Bitmap;
import android.graphics.drawable.BitmapDrawable;
import android.graphics.drawable.Drawable;
import android.os.Bundle;
import android.view.View;
import android.widget.ImageView;

public class BackgroundChooserDialogFragment extends AbsDialogFragment {
  private SharedPreferences mPreferencesTheme;
  private OnBackgroundChangedListener listener;
  @Override
  public Dialog onCreateDialog(Bundle savedInstanceState) {
    mPreferencesTheme = getActivity().getApplicationContext().getSharedPreferences(
        Consts.Preferences.GENERAL, Context.MODE_PRIVATE);
    final String backgroundPath = getArguments()
        .getString("backgroundPath");
    View v = View.inflate(getActivity(), R.layout.background_chooser, null);
    final ImageView iv_background = (ImageView) v
        .findViewById(R.id.imageView_background);

    if (backgroundPath != null) {
      Drawable background = Drawable.createFromPath(backgroundPath);
      BitmapDrawable bd = (BitmapDrawable) background;
      Bitmap bm = bd.getBitmap();
      iv_background.setImageBitmap(bm);
    }

    DialogInterface.OnClickListener listenerBackground = new DialogInterface.OnClickListener() {

      @Override
      public void onClick(DialogInterface dialog, int whichButton) {
        switch (whichButton) {
        case DialogInterface.BUTTON_POSITIVE:
          if (backgroundPath != null) {
            mPreferencesTheme
                .edit()
                .putString(Consts.Preferences.BG_PATH,
                    backgroundPath).commit();
          }
          listener.onBackgroundChanged(backgroundPath);
          // TODO ???
          /*
           * DialogInterface.OnClickListener listenerNotice = new
           * DialogInterface.OnClickListener() {
           * 
           * @Override public void onClick(DialogInterface dialog, int
           * whichButton) { if (whichButton ==
           * DialogInterface.BUTTON_POSITIVE) showCustomDialog(null,
           * Consts.Dialogs.CHANGE_COLOR); } }; new
           * AlertDialog.Builder(getActivity())
           * .setIcon(android.R.drawable.ic_dialog_info)
           * .setTitle(android.R.string.dialog_alert_title)
           * .setMessage(R.string.if_change_text_color)
           * .setPositiveButton(android.R.string.yes, listenerNotice)
           * .setNegativeButton(android.R.string.no,
           * listenerNotice).show();
           */
          break;
        case DialogInterface.BUTTON_NEGATIVE:
          Intent i = new Intent(
              Intent.ACTION_PICK,
              android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
          startActivityForResult(i,
              Consts.PICK_BACKGROUND_REQUEST_CODE);
          break;
        case DialogInterface.BUTTON_NEUTRAL:
          iv_background
              .setImageResource(R.drawable.background_holo_dark);
          mPreferencesTheme.edit().remove(Consts.Preferences.BG_PATH)
              .commit();
          listener.onBackgroundChanged(null);
          break;
        }

      }
    };
    Dialog dialogBackgroundChooser = new AlertDialog.Builder(getActivity())
        .setView(v).setIcon(android.R.drawable.ic_dialog_info)
        .setTitle(R.string.menu_change_background)
        .setPositiveButton(android.R.string.ok, listenerBackground)
        .setNegativeButton(R.string.choose_picture, listenerBackground)
        .setNeutralButton(R.string.choose_default, listenerBackground)
        .create();
    return dialogBackgroundChooser;
  }
  public void setOnBackgroundChangedListener(OnBackgroundChangedListener onBackGroundChangedListener){
    this.listener = onBackGroundChangedListener;
  }
  public interface OnBackgroundChangedListener{
    public void onBackgroundChanged(String path);
  }
}




Java Source Code List

android.net.http.SslError.java
com.paperairplane.music.share.AtSuggestionActivity.java
com.paperairplane.music.share.Consts.java
com.paperairplane.music.share.FeedbackMessage.java
com.paperairplane.music.share.Main.java
com.paperairplane.music.share.MusicData.java
com.paperairplane.music.share.MusicListAdapter.java
com.paperairplane.music.share.QueryAndShareMusicInfo.java
com.paperairplane.music.share.Receiver.java
com.paperairplane.music.share.SnsHelper.java
com.paperairplane.music.share.cache.ImageLoader.java
com.paperairplane.music.share.cache.MemoryCache.java
com.paperairplane.music.share.dialogs.AboutDialogFragment.java
com.paperairplane.music.share.dialogs.AbsDialogFragment.java
com.paperairplane.music.share.dialogs.AuthManagerDialogFragment.java
com.paperairplane.music.share.dialogs.BackgroundChooserDialogFragment.java
com.paperairplane.music.share.dialogs.ChangeColorDialogFragment.java
com.paperairplane.music.share.dialogs.EmptyDialogFragment.java
com.paperairplane.music.share.dialogs.FeedbackDialogFragment.java
com.paperairplane.music.share.dialogs.SearchDialogFragment.java
com.paperairplane.music.share.dialogs.SendWeiboDialogFragment.java
com.paperairplane.music.share.dialogs.ThankDialogFragment.java
com.paperairplane.music.share.utils.CrashHandler.java
com.paperairplane.music.share.utils.HanziToPinyin.java
com.paperairplane.music.share.utils.HttpQuestHandler.java
com.paperairplane.music.share.utils.IntentResolver.java
com.paperairplane.music.share.utils.MyLogger.java
com.paperairplane.music.share.utils.ShakeDetector.java
com.paperairplane.music.share.utils.Utilities.java
com.paperairplane.music.share.utils.lastfm.Album.java
com.paperairplane.music.share.utils.lastfm.Artist.java
com.paperairplane.music.share.utils.lastfm.Caller.java
com.paperairplane.music.share.utils.lastfm.DomElement.java
com.paperairplane.music.share.utils.lastfm.ImageHolder.java
com.paperairplane.music.share.utils.lastfm.ImageSize.java
com.paperairplane.music.share.utils.lastfm.Image.java
com.paperairplane.music.share.utils.lastfm.ItemFactoryBuilder.java
com.paperairplane.music.share.utils.lastfm.ItemFactory.java
com.paperairplane.music.share.utils.lastfm.MapUtilities.java
com.paperairplane.music.share.utils.lastfm.MusicEntry.java
com.paperairplane.music.share.utils.lastfm.PaginatedResult.java
com.paperairplane.music.share.utils.lastfm.ResponseBuilder.java
com.paperairplane.music.share.utils.lastfm.Result.java
com.paperairplane.music.share.utils.lastfm.StringUtilities.java
com.paperairplane.music.share.utils.lastfm.Track.java
com.weibo.sdk.android.Oauth2AccessToken.java
com.weibo.sdk.android.WeiboAuthListener.java
com.weibo.sdk.android.WeiboDialogError.java
com.weibo.sdk.android.WeiboDialog.java
com.weibo.sdk.android.WeiboException.java
com.weibo.sdk.android.WeiboParameters.java
com.weibo.sdk.android.Weibo.java
com.weibo.sdk.android.api.AccountAPI.java
com.weibo.sdk.android.api.ActivityInvokeAPI.java
com.weibo.sdk.android.api.CommentsAPI.java
com.weibo.sdk.android.api.CommonAPI.java
com.weibo.sdk.android.api.FavoritesAPI.java
com.weibo.sdk.android.api.FriendshipsAPI.java
com.weibo.sdk.android.api.PlaceAPI.java
com.weibo.sdk.android.api.RegisterAPI.java
com.weibo.sdk.android.api.SearchAPI.java
com.weibo.sdk.android.api.ShortUrlAPI.java
com.weibo.sdk.android.api.StatusesAPI.java
com.weibo.sdk.android.api.SuggestionsAPI.java
com.weibo.sdk.android.api.TagsAPI.java
com.weibo.sdk.android.api.TrendsAPI.java
com.weibo.sdk.android.api.UsersAPI.java
com.weibo.sdk.android.api.WeiboAPI.java
com.weibo.sdk.android.net.AsyncWeiboRunner.java
com.weibo.sdk.android.net.HttpManager.java
com.weibo.sdk.android.net.NetStateManager.java
com.weibo.sdk.android.net.RequestListener.java
com.weibo.sdk.android.sso.SsoHandler.java
com.weibo.sdk.android.util.BitmapHelper.java
com.weibo.sdk.android.util.Utility.java